Project Scope and Objectives
The Release Engineering project serves as the central hub for all automation, tooling and infrastructure related activities required by Anuket projects to ensure release related activities are run in reliable fashion. Further the project provides guidance, support, and tooling for any of Anuket's automation needs.
Anuket has several projects that require support for automating repeating tasks such as building, deploying, testing, generating documentation, and so on which do not fall under the scope of existing projects.
Each of these activities require identification and installation of the necessary tools, creation of corresponding scripts and development and deployment of continuous integration jobs that will be realized by this project.
Included activities are
- Proposing ways to fully automate repeating tasks of different Anuket projects and put requirements on them to achieve full automation.
- Realizing the ideas presented by Anuket projects by identifying and installing tools, creating scripts to automate repeating tasks so they can be re-executed and the results can be reproduced.
- Creating scripts and continuous integration jobs in order to integrate project specific scripts into E2E automation and CI.
- Maintaining automation tools, infrastructure, and job templates.
- Making sure the tools relied on by Anuket are up and running at all times. (Git/Gerrit, Artifact Repository, Jenkins, etc.)
- Providing technical and educational support to the community.
- Identifying and documenting automatic release processes.
- Writing and maintaining release process automation in order to produce release artifacts in a unified way, tag corresponding versions in SCM/Git repositories, and create stable branches.
- Create tools and integration jobs to support stable branches.
- Evaluate and employ new tools in order to increase the efficiency of the automation framework.
Project specific/internal automation activities listed below are excluded from the scope of Release Engineering project:
The Release Engineering project serves to empower the community to develop project specific continuous and E2E integration by providing them the necessary tools, guidance, and support, but does not maintain the individual project activities listed above.