Skip to content

Commit

Permalink
suggested wording and format
Browse files Browse the repository at this point in the history
  • Loading branch information
oraNod committed Jul 29, 2024
1 parent 0caa16b commit 3a7996a
Showing 1 changed file with 45 additions and 48 deletions.
93 changes: 45 additions & 48 deletions docs/community-ee/community-ee-release-process.md
Original file line number Diff line number Diff line change
@@ -1,25 +1,24 @@
# Releasing the community-ee-* execution environments
# Releasing community-ee-* execution environments

## Release Cadence

The community EEs are to be built and published on the next day and/or the day after ansible-core is released.
The community EEs are built and published on the day after `ansible-core` is released.

## EE tag versioning

Versioning would be the core tag + a patch number, e.g
The EE versioning convention is core tag plus patch number, for example:

- EE with core `2.16.2` comes out -> `community-ee:2.16.2-1`
- EE with core `2.16.3` comes out -> `community-ee:2.16.3-1`


## Dependencies

- Podman/Docker

## Credentials
## Credentials

- Access to https://github.com/ansible-community/images repo
- Access to ghcr.io
- Access to the https://github.com/ansible-community/images repository
- Access to ghcr.io

## Prerequisites

Expand All @@ -28,54 +27,52 @@ Versioning would be the core tag + a patch number, e.g
- Read about the [eerelease.yml](/.github/workflows/eerelease.yml) GitHub workflow.
- Show intention and book the date for the releasing of the EE.

## Announcement before the release
## Making the pre-release announcement

Post this message in the channel before working on the release, using the correct release number.
Post this message in the channel before working on the release, using the correct release number.

```
📯📯📯 I am working on the `Ansible Execution Environment Base and Minimal 2.x.y-1` Release. I will keep the room updated about the progress.📦️
```
```markdown
📯📯📯 I am working on the `Ansible Execution Environment Base and Minimal 2.x.y-1` Release. I will keep the room updated about the progress.📦️
```

## Actual Build Steps :
## Building the EEs

### On the terminal

1. Check the most recent [ansible-core version](https://pypi.org/project/ansible-core/)
2. Verify ansible collection versions for ``ansible.posix``, ``ansible.utils`` and ``ansible.windows`` for `deps` file of the Ansible community package version for the related release in the [ansible-build-data repo](https://github.com/ansible-community/ansible-build-data).
3. Go to the images/execution-environments directory.
4. Create the correct `git branch` (name it in the related version eg: 2.17.1-1)

```
cd images/execution-environments
git checkout main
git pull upstream main
git checkout -b coreversion-eeversion

```

5. Update the ansible-core and collection versions in the `/images/execution-environments/community-ee-base/execution-environment.yml` file.
- Update the ansible-core version in the `/images/execution-environments/community-ee-minimal/execution-environment.yml` file, commit the changes and create a PR.

```
vim community-ee-base/execution-environment.yml
git add -u
git status
git commit -m "Updates ansible-core & collection versions for Base and Minimal"
git push origin branch_name
```
Once the PR is merged, it is the time to start with the github workflow.

2. Verify Ansible collection versions for ``ansible.posix``, ``ansible.utils`` and ``ansible.windows`` for `deps` file of the Ansible community package version for the related release in the [ansible-build-data repo](https://github.com/ansible-community/ansible-build-data).
3. Change to the `images/execution-environments` directory.
4. Create a `git branch` that has a name corresponding to the version, for example: `2.17.1-1`.

```bash
cd images/execution-environments
git checkout main
git pull upstream main
git checkout -b coreversion-eeversion
```

5. Update the `ansible-core` and collection versions in the `/images/execution-environments/community-ee-base/execution-environment.yml` file.
6. Update the `ansible-core` version in the `/images/execution-environments/community-ee-minimal/execution-environment.yml` file.
7. Commit the changes and create a PR.

```bash
vim community-ee-base/execution-environment.yml
git add -u
git status
git commit -m "Updates ansible-core & collection versions for Base and Minimal"
git push origin branch_name
```

After the PR is merged, it is the time to trigger the release workflow on GitHub.

### Triggering the release workflow

1. Go to the [ansible-community/images](https://github.com/ansible-community/images) repo.
2. Click on the ![`Actions`](action-workflow-block.png) tab to view the available workflows.
3. Go to the `Release Ansible Execution Environment` workflow and then select ![`Run Workflow`](docs/community-ee/dropdown-workflow.png).
4. Click on the Drop down Button and choose the type of the Execution Environment, (whether it is `community-ee-base` or `community-ee-minimal`)
5. Write down the patch number of execution environment (to be appended to the ansible-core version) .
This is typically 1.
6. Check on the button if this is `latest` release of the particular execution environment
7. Click on the ![`Run workflow` button](docs/community-ee/workflow_block.png) to run the workflow
8. After the successful run of the workflow, go on and check if the [image is published](https://github.com/orgs/ansible-community/packages/container) and get the sha256 sum of the published image (to be used in the announcement).
9. Make the announcement in the #release-management and #community-working-group Matrix room, Forum, and Bullhorn according to the instructions in `docs/community-ee/community-ee-announcement.md`.

1. Go to the [ansible-community/images](https://github.com/ansible-community/images) repository.
2. Click the `Actions` tab to view the available workflows.
3. Go to the `Release Ansible Execution Environment` workflow and then select `Run Workflow`.
4. Click the drop-down button and choose the type of the Execution Environment, whether `community-ee-base` or `community-ee-minimal`.
5. Provide the patch number of the execution environment that is appended to the `ansible-core` version, which is typically `1`.
6. Select the button if this is `latest` release of the particular execution environment.
7. Click the `Run workflow` to run the workflow.
8. After the successful run of the workflow, check if the [image is published](https://github.com/orgs/ansible-community/packages/container) and get the sha256 sum of the published image for the release announcement.
9. Announce the release in the #release-management and #community-working-group Matrix room, Forum, and Bullhorn according to the instructions in `docs/community-ee/community-ee-announcement.md`.

0 comments on commit 3a7996a

Please sign in to comment.