# Stork 0.1.0, November 06th 2019, Release Notes Welcome to the Stork 0.1.0 release. This is the very first development of the Stork project, which aims at providing a modern, responsive and scalable dashboard solution with well defined REST API interface. The long term goal of the project is to provide a monitoring and management solution for BIND, Kea DHCP and more. The goal of this initial release is to provide some fundamental building blocks, such as building procedures, server framework, server-agent connectivity and a basic user interface. There are no end-user usable features yet. The first basic user features are coming up in 0.2. Features introduced in this version: 1. **Stork server with REST API**. We now have a functional Stork server. Every network is expected to deploy a single central server in their core. The server provides a handful of REST API calls that govern user authentication, checking server version, connecting to agent and more. We do have a responsive web interface based on modern tooling (Angular 8). #22 2. **Stork agent**. The agent is a small tool that's expected to be deployed on every machine that runs either BIND or Kea DHCP server to be monitored. #26 3. **Checking Machine status**. The agent is able to retrieve machine status, including OS name, hostname, OS version, virtualization type, IP address, number of CPU cores, CPU load, available memory, memory utilization, uptime and more. The server is able to connect to a Stork agent using gRPC over http/2 and retrieve that information remotely. #23 4. **Database connection and upgrades**. The Stork server is able to connect to PostgreSQL database and retrieve various pieces of information from it. Right now the schema is rather simple, but it is expected to grow in complexity significantly in the near future. A migrations (upgrade/downgrade) mechanism has been implemented. #20 5. **User authentication**. The Stork UI has a simple login form that retrieves data from the server and manages user login process. Both the UI (browser side) and the server are able to store session information, so returning users will not have to log in repeatedly. #22 6. **Stork ARM**. We have a Stork Administrator Reference Manual. It's simple. It will get better in the future. #27 7. **Build framework**. Stork comes with a build system that simplifies the compilation procedure. To build stork 0.1, you need to have rake, jre and docker installed. Every other dependency will be retrieved and installed locally (no root credentials needed). Stork can be built with one command: `rake docker_up`. #19 8. **Development environment**. We came up with many tools, scripts and processes the end users don't really see. We have a CI environment that lets us build the software automatically and flag issues to developers, we have unit-tests that are ran after every commit, we have coding guidelines, the team agreed on many processes that put a shape around our intentions to develop the software. #28, #30, #34 ## Release Model Stork is expected to have monthly development releases on the first Wednesday of each month (with some exceptions around holidays). We're planning to have a first major release 0.8 some time in the spring of 2020. We encourage users to test the development releases and report back their findings on the stork-dev mailing list, available at https://lists.isc.org/mailman/listinfo/stork-dev. This text references issue numbers. For more details, visit the Stork GitLab page at https://gitlab.isc.org/isc-projects/stork/issues. ## License This version of Stork is released under the Mozilla Public License, version 2.0. https://www.mozilla.org/en-US/MPL/2.0 ## Download The Stork source and PGP signature for this release may be downloaded from: https://ftp.isc.org/isc/stork The signature was generated with the ISC code signing key which is available at: https://www.isc.org/pgpkeys ISC provides documentation in the Stork Administrator Reference Manual. It is currently available only in the source form in docs/ directory. To build it, you need the Sphinx tool. This is expected to change in a future release. We ask users of this software to please let us know how it worked for you and what operating system you tested on. Feel free to share your feedback on the Stork-Dev mailing list (https://lists.isc.org/mailman/listinfo/stork-dev). Also we would like to hear whether the documentation is adequate and accurate. Please open tickets in the Stork GitLab project for bugs, documentation omissions and errors, and enhancement requests. We want to hear from you even if everything worked. ## Support Professional support for Stork will become available once it reaches 1.0 milestone. Existing ISC customers that consider themselves *very* early adopters may get involved in the development process, including roadmap, features planning and early testing, but the software maturity level does not constitute a typical professional service before 1.0 milestone. Free best-effort support is provided by our user community via a mailing list. Information on all public email lists is available at https://www.isc.org/community/mailing-list. If you have any comments or questions about working with Stork, please share them to the Stork-dev List (https://lists.isc.org/mailman/listinfo/stork-dev). Bugs and feature requests may be submitted via GitLab at https://gitlab.isc.org/isc-projects/stork/issues. ## Changes The following summarizes changes and important upgrade notes since beginning of the project. * 8 [func] marcin Enabled sign-in/sign-out mechanism with HTTP sessions based on cookies. The default admin account has been created with default credentials. (Gitlab #22) * 7 [func] godfryd Added initial implementation of the page which allows for adding new machines and listing them. The missing part of this implementation is the actual storage of the machines in the database. In addition, the agent has been extended to return a state of the machine. (Gitlab #23) * 6 [func] godfryd Added initial implementation of Stork Agent. Implemented basic communication between Stork Agent and Stork Server using gRPC (Server initiates connection to Agent). (Gitlab #26) * 5 [func] marcin Added stork-db-migrate tool to be used for migrating the database schema between versions and returning the current schema version number. Also, added basic schema with SQL tables holding system users and session information. (Gitlab #20) * 4 [doc] tomek Added several text files: AUTHORS (lists project authors and contributors), ChangeLog.md (contains all new user visible changes) and CONTRIBUTING.md (Contributor's guide, explains how to get your patches accepted in Stork project in a seamless and easy way. (Gitlab #17) * 3 [func] godfryd Added Swagger-based API for defining ReST API to Stork server. Added initial Web UI based on Angular and PrimeNG. Added Rakefile for building whole solution. Removed gin-gonic dependency. (Gitlab #19) * 2 [build] godfryd Added initial framework for backend, using go and gin-gonic. (Gitlab #missing) * 1 [func] franek Added initial proposal for Grafana dashboard. (Gitlab #6) Thank you again to everyone who assisted us in making this release possible. We look forward to receiving your feedback.