Merge pull request #704 from manala/all/update-manala #198
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Collection Release | |
on: | |
push: | |
branches: | |
- master | |
jobs: | |
collection-build: | |
runs-on: ubuntu-22.04 | |
if: github.event.head_commit.message == 'Release' | |
steps: | |
- name: Notify Slack of starting | |
uses: act10ns/slack@v2 | |
with: | |
status: starting | |
channel: '#collection_release' | |
env: | |
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }} | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Env | |
run: | | |
cp .env.dist .env | |
- name: Set up system | |
uses: ./.manala/github/system/setup | |
- name: Retrieve version from galaxy.yml | |
id: get_version | |
uses: CumulusDS/get-yaml-paths-action@v1.0.1 | |
with: | |
file: ./galaxy.yml | |
version: version | |
- name: Build Collection | |
id: build_collection | |
run: | | |
make collection.build | |
- name: Create artifact from collection build | |
uses: actions/upload-artifact@v3 | |
with: | |
path: ./manala-roles-${{ steps.get_version.outputs.version }}.tar.gz | |
name: manala-roles-${{ steps.get_version.outputs.version }} | |
retention-days: 1 | |
- name: Notify Slack of job status | |
uses: act10ns/slack@v2 | |
with: | |
status: ${{ job.status }} | |
steps: ${{ toJson(steps) }} | |
channel: '#collection_release' | |
env: | |
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }} | |
if: always() | |
collection-publish: | |
needs: collection-build | |
runs-on: ubuntu-22.04 | |
if: github.event.head_commit.message == 'Release' | |
env: | |
COLLECTION_API_TOKEN: ${{ secrets.COLLECTION_API_TOKEN }} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Env | |
run: | | |
cp .env.dist .env | |
- name: Set up system | |
uses: ./.manala/github/system/setup | |
- name: Retrieve version from galaxy.yml | |
id: get_version | |
uses: CumulusDS/get-yaml-paths-action@v1.0.1 | |
with: | |
file: ./galaxy.yml | |
version: version | |
- name: Retrieve collection build from artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: manala-roles-${{ steps.get_version.outputs.version }} | |
- name: Publish Collection | |
id: publish_collection | |
run: | | |
make collection.publish | |
- name: Notify Slack of job status | |
uses: act10ns/slack@v2 | |
with: | |
status: ${{ job.status }} | |
steps: ${{ toJson(steps) }} | |
channel: '#collection_release' | |
env: | |
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }} | |
if: always() | |
github-release: | |
needs: collection-build | |
runs-on: ubuntu-22.04 | |
if: github.event.head_commit.message == 'Release' | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Retrieve version from galaxy.yml | |
id: get_version | |
uses: CumulusDS/get-yaml-paths-action@v1.0.1 | |
with: | |
file: ./galaxy.yml | |
version: version | |
- name: Get Changelog Entry | |
id: changelog | |
uses: mindsers/changelog-reader-action@v2 | |
with: | |
path: ./CHANGELOG.md | |
version: ${{ steps.get_version.outputs.version }} | |
- name: Retrieve collection build from artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: manala-roles-${{ steps.get_version.outputs.version }} | |
- name: Create Github Release | |
id: github_release | |
uses: ncipollo/release-action@v1 | |
with: | |
name: manala-roles ${{ steps.get_version.outputs.version }} | |
tag: ${{ steps.get_version.outputs.version }} | |
body: ${{ steps.changelog.outputs.changes }} | |
artifacts: ./manala-roles-${{ steps.get_version.outputs.version }}.tar.gz | |
token: ${{ secrets.GITHUB_TOKEN }} | |
skipIfReleaseExists: true | |
- name: Notify Slack of job status | |
uses: act10ns/slack@v2 | |
with: | |
status: ${{ job.status }} | |
steps: ${{ toJson(steps) }} | |
channel: '#collection_release' | |
env: | |
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }} | |
if: always() |