Skip to content

Commit

Permalink
remove module template rendering
Browse files Browse the repository at this point in the history
  • Loading branch information
friedrichwilken committed Dec 18, 2023
1 parent 02a8aff commit c7923d4
Show file tree
Hide file tree
Showing 3 changed files with 76 additions and 70 deletions.
15 changes: 14 additions & 1 deletion .github/workflows/create-release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -54,11 +54,24 @@ jobs:
RELEASE_ID=$(./scripts/create_draft_release.sh ${{ github.event.inputs.name }})
echo "release_id=$RELEASE_ID" >> $GITHUB_OUTPUT
- name: Create lightweight tag
- name: Trigger 'release-nats-manager-build' prow job
run: |
git tag ${{ github.event.inputs.name }}
git push origin ${{ github.event.inputs.name }}
- name: Wait for 'release-nats-manager-build'
run: ./scripts/verify-status.sh ${{ github.ref_name }} 600 10 30

- name: Create and upload nats-manager.yaml and nats-default-cr.yaml
env:
BASE_REF: ${{ github.event.inputs.name }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
IMG: "europe-docker.pkg.dev/kyma-project/prod/nats-manager:${{ github.event.inputs.name }}"
MODULE_REGISTRY: "europe-docker.pkg.dev/kyma-project/prod/unsigned"
KUSTOMIZE_VERSION: "v4.5.6"
run: |
./scripts/render_and_upload_manifests.sh
outputs:
release_id: ${{ steps.create-draft.outputs.release_id }}

Expand Down
69 changes: 0 additions & 69 deletions scripts/release.sh

This file was deleted.

62 changes: 62 additions & 0 deletions scripts/render_and_upload_manifests.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
#!/usr/bin/env bash

# standard bash error handling
set -o nounset # treat unset variables as an error and exit immediately.
set -o errexit # exit immediately when a command fails.
set -E # needs to be set if we want the ERR trap
set -o pipefail # prevents errors in a pipeline from being masked

# Expected variables:
# BASE_REF - name of the tag
# GITHUB_TOKEN - github token used to upload the template yaml

uploadFile() {
filePath=${1}
ghAsset=${2}

response=$(curl -s -o output.txt -w "%{http_code}" \
--request POST --data-binary @"$filePath" \
-H "Authorization: token $GITHUB_TOKEN" \
-H "Content-Type: text/yaml" \
$ghAsset)
if [[ "$response" != "201" ]]; then
echo "Unable to upload the asset ($filePath): "
echo "HTTP Status: $response"
cat output.txt
exit 1
else
echo "$filePath uploaded"
fi
}

echo "BASE_REF ${BASE_REF}"

MODULE_VERSION=${BASE_REF} make render-manifest

echo "Generated nats-manager.yaml:"
cat nats-manager.yaml

echo "Updating github release with nats-manager.yaml"

echo "Finding release id for: ${BASE_REF}"
CURL_RESPONSE=$(curl -w "%{http_code}" -sL \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer $GITHUB_TOKEN" \
https://api.github.com/repos/kyma-project/nats-manager/releases)
JSON_RESPONSE=$(sed '$ d' <<<"${CURL_RESPONSE}")
HTTP_CODE=$(tail -n1 <<<"${CURL_RESPONSE}")
if [[ "${HTTP_CODE}" != "200" ]]; then
echo "${JSON_RESPONSE}" && exit 1
fi

RELEASE_ID=$(jq <<<${JSON_RESPONSE} --arg tag "${BASE_REF}" '.[] | select(.tag_name == $ARGS.named.tag) | .id')

if [ -z "${RELEASE_ID}" ]; then
echo "No release with tag = ${BASE_REF}"
exit 1
fi

UPLOAD_URL="https://uploads.github.com/repos/kyma-project/nats-manager/releases/${RELEASE_ID}/assets"

uploadFile "nats-manager.yaml" "${UPLOAD_URL}?name=nats-manager.yaml"
uploadFile "config/samples/default.yaml" "${UPLOAD_URL}?name=nats_default_cr.yaml"

0 comments on commit c7923d4

Please sign in to comment.