Skip to content

Merge pull request #31 from semiotic-ai/fix_release_please_token #5

Merge pull request #31 from semiotic-ai/fix_release_please_token

Merge pull request #31 from semiotic-ai/fix_release_please_token #5

on:
push:
branches:
- master
workflow_dispatch:
inputs:
force_build:
type: boolean
description: >-
Force build and push container image.
required: false
default: false
permissions:
contents: write
pull-requests: write
name: release-please
jobs:
release-please:
runs-on: ubuntu-latest
outputs:
releases_created: ${{ steps.release-please.outputs.releases_created }}
steps:
- name: Generate token
id: generate_token
uses: tibdex/github-app-token@b62528385c34dbc9f38e5f4225ac829252d1ea92 #v1.8.0
with:
app_id: ${{ secrets.PR_AUTOMATION_APP_ID }}
private_key: ${{ secrets.PR_AUTOMATION_APP_PEM }}
- name: Release please
id: release-please
uses: google-github-actions/release-please-action@4c5670f886fe259db4d11222f7dff41c1382304d #v3.7.12
with:
release-type: python
bump-minor-pre-major: true
bump-patch-for-minor-pre-major: true
token: ${{ steps.generate_token.outputs.token }}
container_build:
runs-on: ubuntu-latest
needs: release-please
if: needs.release-please.outputs.releases_created == 'true' || github.event.inputs.force_build == 'true'
permissions:
packages: write
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
# Extract major, minor, patch from pyproject.toml `version` field
# Because of: https://github.com/google-github-actions/release-please-action/issues/688
- name: Extract version
id: extract-version
run: |
echo "::set-output name=major::$(grep -m 1 version pyproject.toml | tr -s ' ' | tr -d '"' | tr -d "'" | cut -d' ' -f3 | cut -d'.' -f1)"
echo "::set-output name=minor::$(grep -m 1 version pyproject.toml | tr -s ' ' | tr -d '"' | tr -d "'" | cut -d' ' -f3 | cut -d'.' -f2)"
echo "::set-output name=patch::$(grep -m 1 version pyproject.toml | tr -s ' ' | tr -d '"' | tr -d "'" | cut -d' ' -f3 | cut -d'.' -f3)"
- name: Build Image
id: build-image
uses: redhat-actions/buildah-build@v2
with:
image: autoagora-processor
tags: >
latest
v${{ steps.extract-version.outputs.major }}
v${{ steps.extract-version.outputs.major }}.${{ steps.extract-version.outputs.minor }}
v${{ steps.extract-version.outputs.major }}.${{ steps.extract-version.outputs.minor }}.${{ steps.extract-version.outputs.patch }}
containerfiles: |
./Dockerfile
- name: Push
id: push-to-ghcr
uses: redhat-actions/push-to-registry@v2
with:
image: ${{ steps.build-image.outputs.image }}
tags: ${{ steps.build-image.outputs.tags }}
registry: ghcr.io/${{ github.repository_owner }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Print image url
run: echo "Image pushed to ${{ steps.push-to-ghcr.outputs.registry-paths }}"