Skip to content

cr status

cr status #22

Workflow file for this run

name: Release Charts
on:
push:
branches:
- main
jobs:
release:
# depending on default permission settings for your org (contents being read-only or read-write for workloads), you will have to add permissions
# see: https://docs.github.com/en/actions/security-guides/automatic-token-authentication#modifying-the-permissions-for-the-github_token
permissions:
contents: write
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Get Chart Version
id: chart_version
run: |
echo "chart_version=$(yq eval '.version' tracing-chart/Chart.yaml)" >> $GITHUB_OUTPUT
echo "cr_version=$(yq eval '.version' cr.yaml)" >> $GITHUB_OUTPUT
echo "chart_dir=$(yq eval '.charts-dir' cr.yaml)" >> $GITHUB_OUTPUT
- name: check if chart and cr version are same
id: check_chart_version
run: |
if [ "${{ steps.chart_version.outputs.chart_version }}" != "${{ steps.chart_version.outputs.cr_version }}" ]; then
echo "Chart version and cr version are not same"
exit 1
else
echo "Chart version and cr version are same"
echo "tag=${{ steps.chart_version.outputs.chart_dir }}-${{ steps.chart_version.outputs.chart_version }}" >> $GITHUB_OUTPUT
fi
- name: check if git tag exists
id: check_tag
run: |
if git rev-parse ${{ steps.check_chart_version.outputs.tag }} >/dev/null 2>&1; then
echo "Tag already exists"
exit 1
else
echo "Tag does not exist"
fi
- name: Configure Git
run: |
git config user.name "$GITHUB_ACTOR"
git config user.email "$GITHUB_ACTOR@users.noreply.github.com"
- name: Install chart releaser
run: |
curl -L -o /tmp/cr.tgz https://github.com/helm/chart-releaser/releases/download/v1.6.0/chart-releaser_1.6.0_linux_amd64.tar.gz
tar -xv -C /tmp -f /tmp/cr.tgz
mv /tmp/cr /usr/local/bin/cr
- name: Package chart using chart releaser
run: |
cr package tracing-chart --config cr.yaml
- name: git create tag
run: |
git add .cr-release-packages && \
git commit -m "Actions: Release ${{ steps.check_chart_version.outputs.tag }}" && \
git tag ${{ steps.check_chart_version.outputs.tag }} && \
git push origin ${{ steps.check_chart_version.outputs.tag }}
- name: chart upload
env:
GITHUB_TOKEN: '${{ secrets.GITHUB_TOKEN }}'
run: |
cr upload --config cr.yaml --token $GITHUB_TOKEN --config cr.yaml
- name: update index.yaml
env:
GITHUB_TOKEN: '${{ secrets.GITHUB_TOKEN }}'
run: |
cr index --config cr.yaml --token $GITHUB_TOKEN --config cr.yaml
- name: git push index.yaml
run: |
git add index.yaml && \
git commit -m "Actions: Release index.yaml ${{ steps.check_chart_version.outputs.tag }}" && \
git push origin main