Skip to content

Issue: {Jira_ticket} #124

Issue: {Jira_ticket}

Issue: {Jira_ticket} #124

Workflow file for this run

---
name: release
run-name: release ${{ inputs.tag }}
on:
workflow_dispatch:
inputs:
tag:
description: 'Tag to be released'
required: true
env:
PROJECT_NAME: ${{ github.event.repository.name }}
jobs:
release:
runs-on: ubuntu-latest
steps:

Check failure on line 18 in .github/workflows/release.yaml

View workflow run for this annotation

GitHub Actions / .github/workflows/release.yaml

Invalid workflow file

You have an error in your yaml syntax on line 18
- name: Checkout
uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '22'
cache: yarn
# TODO: remove the following step once Oras CLI 0.13.0 bug https://github.com/oras-project/oras/issues/447 is fixed.
- name: Downgrade Oras to 0.12.0
run: |
curl -LO https://github.com/oras-project/oras/releases/download/v0.12.0/oras_0.12.0_linux_amd64.tar.gz
mkdir -p oras-install/
tar -zxf oras_0.12.0_*.tar.gz -C oras-install/
mv oras-install/oras /usr/local/bin/
rm -rf oras_0.12.0_*.tar.gz oras-install/
- name: Set up Docker Buildk
uses: docker/setup-buildx-action@v3
- name: Login to Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ github.token }}
- name: Push dashboards into the production namespace
run: |
oras push ghcr.io/${{ github.repository }}/${{ env.PROJECT_NAME }}-dashboards:${{ github.event.inputs.tag }} \
ingestion/ingestion-processor-dashboard.json:application/grafana-dashboard+json \
ingestion/ingestion-producer-dashboard.json:application/grafana-dashboard+json \
ingestion/ingestion-global-dashboard.json:application/grafana-dashboard+json \
ingestion/ingestion-processor-alert.yaml:application/prometheus-alerts+yaml \
ingestion/ingestion-producer-alert.yaml:application/prometheus-alerts+yaml \
lifecycle/dashboard.json:application/grafana-dashboard+json \
lifecycle/alerts.yaml:application/prometheus-alerts+yaml \
cold-storage/dashboard.json:application/grafana-dashboard+json \
replication/dashboard.json:application/grafana-dashboard+json \
replication/alerts.yaml:application/prometheus-alerts+yaml \
notification/dashboard.json:application/grafana-dashboard+json \
notification/alerts.yaml:application/prometheus-alerts+yaml \
oplog-populator/dashboard.json:application/grafana-dashboard+json \
oplog-populator/alerts.yaml:application/prometheus-alerts+yaml
working-directory: monitoring
- name: Push policies into the production namespace
run: |
oras push ghcr.io/${{ github.repository }}/${{ env.PROJECT_NAME }}-policies:${{ github.event.inputs.tag }} \
extensions/lifecycle/conductor/policy.json:application/vnd.iam-policy+json \
extensions/lifecycle/conductor/policy_index_management.json:application/vnd.iam-policy+json \
extensions/lifecycle/bucketProcessor/policy.json:application/vnd.iam-policy+json \
extensions/lifecycle/objectProcessor/policy.json:application/vnd.iam-policy+json \
extensions/lifecycle/objectProcessor/policy_transition.json:application/vnd.iam-policy+json \
extensions/gc/policy.json:application/vnd.iam-policy+json \
policies/queue_populator_policy.json:application/vnd.iam-policy+json \
policies/read_accounts.json:application/vnd.iam-policy+json
- name: Build and push
uses: docker/build-push-action@v5
with:
context: .
push: true
tags: ghcr.io/${{ github.repository }}:${{ github.event.inputs.tag }}
cache-from: type=gha
cache-to: type=gha,mode=max
- name: Create Release
uses: softprops/action-gh-release@v2
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
name: Release ${{ github.event.inputs.tag }}
tag_name: ${{ github.event.inputs.tag }}
generate_release_notes: true
target_commitish: ${{ github.sha }}