fix(config): change defaults for batching (#2383) #909
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: "release-please" | |
on: | |
push: | |
branches: | |
- "master" | |
- "backport/*" | |
concurrency: | |
group: "${{ github.workflow }}-${{ github.ref }}" | |
jobs: | |
release-please: | |
runs-on: ubuntu-latest | |
outputs: | |
release-created: ${{ steps.release.outputs['release_created'] }} | |
tag-name: ${{ steps.release.outputs['tag_name'] }} | |
version: ${{ steps.release.outputs['version'] }} | |
pr: ${{ steps.release.outputs['pr'] }} | |
steps: | |
- name: Set release-please config | |
id: config | |
run: | | |
if [[ ${{ github.ref_name }} == master ]]; then echo "config=.github/release-please/config.json" >> $GITHUB_OUTPUT; | |
elif [[ ${{ github.ref_name }} =~ ^backport/ ]]; then echo "config=.github/release-please/config-backport.json" >> $GITHUB_OUTPUT; | |
fi | |
- name: Run release-please | |
id: release | |
uses: google-github-actions/release-please-action@v4 | |
with: | |
target-branch: ${{ github.ref_name }} | |
token: ${{ secrets.FLUENCEBOT_RELEASE_PLEASE_PAT }} | |
command: manifest | |
config-file: ${{ steps.config.outputs.config }} | |
manifest-file: .github/release-please/manifest.json | |
- name: Show output from release-please | |
if: steps.release.outputs.releases_created | |
env: | |
RELEASE_PLEASE_OUTPUT: ${{ toJSON(steps.release.outputs) }} | |
run: echo "${RELEASE_PLEASE_OUTPUT}" | jq | |
bump-version: | |
if: needs.release-please.outputs.pr != null | |
runs-on: linux-amd64-c-2xlarge | |
needs: | |
- release-please | |
permissions: | |
contents: write | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
ref: ${{ fromJson(needs.release-please.outputs.pr).headBranchName }} | |
token: ${{ secrets.FLUENCEBOT_RELEASE_PLEASE_PAT }} | |
- name: Setup Rust toolchain | |
uses: dsherret/rust-toolchain-file@v1 | |
- name: Install cargo-edit | |
uses: baptiste0928/cargo-install@v3.1.1 | |
with: | |
crate: cargo-edit | |
- name: Get nox version | |
id: version | |
run: | | |
version="$(jq -r '.[]' .github/release-please/manifest.json)" | |
echo "version=${version}" >> $GITHUB_OUTPUT | |
- name: Set nox version | |
run: cargo set-version -p nox ${{ steps.version.outputs.version }} | |
- name: Commit version bump | |
uses: stefanzweifel/git-auto-commit-action@v5 | |
with: | |
commit_message: "chore: Bump nox version to ${{ steps.version.outputs.version }}" | |
branch: ${{ fromJson(needs.release-please.outputs.pr).headBranchName }} | |
commit_user_name: fluencebot | |
commit_user_email: devops@fluence.one | |
commit_author: fluencebot <devops@fluence.one> | |
publish: | |
if: needs.release-please.outputs.release-created | |
needs: release-please | |
uses: ./.github/workflows/publish.yml | |
with: | |
tag: ${{ needs.release-please.outputs.tag-name }} | |
version: ${{ needs.release-please.outputs.version }} | |
update-release: | |
if: needs.release-please.outputs.release-created | |
name: "Update release notes" | |
runs-on: ubuntu-latest | |
needs: | |
- release-please | |
- publish | |
env: | |
RELEASE_VERSION: ${{ needs.release-please.outputs.version }} | |
steps: | |
- name: Get latest ccp release | |
id: ccp | |
uses: pozetroninc/github-action-get-latest-release@v0.8.0 | |
with: | |
owner: fluencelabs | |
repo: capacity-commitment-prover | |
excludes: prerelease, draft | |
token: ${{ secrets.FLUENCEBOT_RELEASE_PLEASE_PAT }} | |
- name: Format ccp release name | |
id: ccp-formated | |
# For docker container tag | |
env: | |
CCP_RELEASE: ${{ steps.ccp.outputs.release }} | |
run: echo "release=${CCP_RELEASE/-v/:}" >> $GITHUB_OUTPUT | |
- name: Update release notes | |
uses: softprops/action-gh-release@v1 | |
with: | |
tag_name: ${{ needs.release-please.outputs.tag-name }} | |
append_body: true | |
body: | | |
## Compatible CCP release | |
[${{ steps.ccp.outputs.release }}](https://files.fluence.dev/buckets/fluence-artifacts/ccp/${{ steps.ccp.outputs.release }}) | |
fluencelabs/ccp:${{ steps.ccp-formated.outputs.release }} | |
## Docker tags | |
``` | |
fluencelabs/nox:unstable | |
fluencelabs/nox:${{ env.RELEASE_VERSION }} | |
``` | |
slack: | |
if: always() | |
name: "Notify" | |
runs-on: ubuntu-latest | |
needs: | |
- release-please | |
- publish | |
permissions: | |
contents: read | |
id-token: write | |
steps: | |
- uses: lwhiteley/dependent-jobs-result-check@v1 | |
id: status | |
with: | |
statuses: failure | |
dependencies: ${{ toJSON(needs) }} | |
- name: Log output | |
run: | | |
echo "statuses:" "${{ steps.status.outputs.statuses }}" | |
echo "jobs:" "${{ steps.status.outputs.jobs }}" | |
echo "found any?:" "${{ steps.status.outputs.found }}" | |
- name: Import secrets | |
uses: hashicorp/vault-action@v3.0.0 | |
with: | |
url: https://vault.fluence.dev | |
path: jwt/github | |
role: ci | |
method: jwt | |
jwtGithubAudience: "https://github.com/fluencelabs" | |
jwtTtl: 300 | |
exportToken: false | |
secrets: | | |
kv/slack/release-please webhook | SLACK_WEBHOOK_URL | |
- uses: ravsamhq/notify-slack-action@v2 | |
if: steps.status.outputs.found == 'true' | |
with: | |
status: "failure" | |
notification_title: "*{workflow}* has {status_message}" | |
message_format: "${{ steps.status.outputs.jobs }} {status_message} in <{repo_url}|{repo}>" | |
footer: "<{run_url}>" |