You've already forked helm-gitea
Compare commits
2 Commits
d2a6ffc26e
...
v13
| Author | SHA1 | Date | |
|---|---|---|---|
| 4d6db83c28 | |||
| 72606192a6 |
86
.gitea/scripts/update-changelog.sh
Executable file
86
.gitea/scripts/update-changelog.sh
Executable file
@@ -0,0 +1,86 @@
|
||||
#!/bin/bash
|
||||
|
||||
DEFAULT_GITEA_SERVER_URL="${GITHUB_SERVER_URL:-"https://gitea.com"}"
|
||||
DEFAULT_GITEA_REPOSITORY="${GITHUB_REPOSITORY:-"gitea/helm-gitea"}"
|
||||
DEFAULT_GITEA_TOKEN="${ISSUE_RW_TOKEN:-""}"
|
||||
|
||||
if [ -z "${1}" ]; then
|
||||
read -p "Enter hostname of the Gitea instance [${DEFAULT_GITEA_SERVER_URL}]: " CURRENT_GITEA_SERVER_URL
|
||||
if [ -z "${CURRENT_GITEA_SERVER_URL}" ]; then
|
||||
CURRENT_GITEA_SERVER_URL="${DEFAULT_GITEA_SERVER_URL}"
|
||||
fi
|
||||
else
|
||||
CURRENT_GITEA_SERVER_URL=$1
|
||||
fi
|
||||
|
||||
if [ -z "${2}" ]; then
|
||||
read -p "Enter name of the git repository [${DEFAULT_GITEA_REPOSITORY}]: " CURRENT_GITEA_REPOSITORY
|
||||
if [ -z "${CURRENT_GITEA_REPOSITORY}" ]; then
|
||||
CURRENT_GITEA_REPOSITORY="${DEFAULT_GITEA_REPOSITORY}"
|
||||
fi
|
||||
else
|
||||
CURRENT_GITEA_REPOSITORY=$2
|
||||
fi
|
||||
|
||||
if [ -z "${3}" ]; then
|
||||
read -p "Enter token to access the Gitea instance [${DEFAULT_GITEA_TOKEN}]: " CURRENT_GITEA_TOKEN
|
||||
if [ -z "${CURRENT_GITEA_TOKEN}" ]; then
|
||||
CURRENT_GITEA_TOKEN="${DEFAULT_GITEA_TOKEN}"
|
||||
fi
|
||||
else
|
||||
CURRENT_GITEA_TOKEN=$3
|
||||
fi
|
||||
|
||||
if ! git sv rn -o /tmp/changelog.md; then
|
||||
echo "ERROR: Failed to generate /tmp/changelog.md" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
CURL_ARGS=(
|
||||
"--data-urlencode" "q=Changelog for upcoming version"
|
||||
# "--data-urlencode=\"q=Changelog for upcoming version\""
|
||||
"--data-urlencode" "state=open"
|
||||
"--fail"
|
||||
"--header" "Accept: application/json"
|
||||
"--header" "Authorization: token ${CURRENT_GITEA_TOKEN}"
|
||||
"--request" "GET"
|
||||
"--silent"
|
||||
)
|
||||
|
||||
if ! ISSUE_NUMBER="$(curl "${CURL_ARGS[@]}" "${CURRENT_GITEA_SERVER_URL}/api/v1/repos/${CURRENT_GITEA_REPOSITORY}/issues" | jq '.[].number')"; then
|
||||
echo "ERROR: Failed query issue number" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
export ISSUE_NUMBER
|
||||
|
||||
if ! echo "" | jq --raw-input --slurp --arg title "Changelog for upcoming version" --arg body "$(cat /tmp/changelog.md)" '{title: $title, body: $body}' 1> /tmp/payload.json; then
|
||||
echo "ERROR: Failed to create JSON payload file" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
CURL_ARGS=(
|
||||
"--data" "@/tmp/payload.json"
|
||||
"--fail"
|
||||
"--header" "Authorization: token ${CURRENT_GITEA_TOKEN}"
|
||||
"--header" "Content-Type: application/json"
|
||||
"--location"
|
||||
"--silent"
|
||||
"--output" "/dev/null"
|
||||
)
|
||||
|
||||
if [ -z "${ISSUE_NUMBER}" ]; then
|
||||
if ! curl "${CURL_ARGS[@]}" --request POST "${CURRENT_GITEA_SERVER_URL}/api/v1/repos/${CURRENT_GITEA_REPOSITORY}/issues"; then
|
||||
echo "ERROR: Failed to create new issue!" 1>&2
|
||||
exit 1
|
||||
else
|
||||
echo "INFO: Successfully created new issue!"
|
||||
fi
|
||||
else
|
||||
if ! curl "${CURL_ARGS[@]}" --request PATCH "${CURRENT_GITEA_SERVER_URL}/api/v1/repos/${CURRENT_GITEA_REPOSITORY}/issues/${ISSUE_NUMBER}"; then
|
||||
echo "ERROR: Failed to update issue with ID ${ISSUE_NUMBER}!" 1>&2
|
||||
exit 1
|
||||
else
|
||||
echo "INFO: Successfully updated existing issue with ID ${ISSUE_NUMBER}!"
|
||||
echo "INFO: ${CURRENT_GITEA_SERVER_URL}/${CURRENT_GITEA_REPOSITORY}/issues/${ISSUE_NUMBER}"
|
||||
fi
|
||||
fi
|
||||
@@ -1,32 +0,0 @@
|
||||
name: changelog
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
|
||||
jobs:
|
||||
changelog:
|
||||
runs-on: ubuntu-latest
|
||||
container: docker.io/thegeeklab/git-sv:2.0.5
|
||||
steps:
|
||||
- name: install tools
|
||||
run: |
|
||||
apk add -q --update --no-cache nodejs curl jq sed
|
||||
- uses: actions/checkout@v5.0.0
|
||||
with:
|
||||
fetch-depth: 0
|
||||
- name: Generate upcoming changelog
|
||||
run: |
|
||||
git sv rn -o changelog.md
|
||||
export RELEASE_NOTES=$(cat changelog.md)
|
||||
export ISSUE_NUMBER=$(curl -s "https://gitea.com/api/v1/repos/gitea/helm-gitea/issues?state=open&q=Changelog%20for%20upcoming%20version" | jq '.[].number')
|
||||
|
||||
echo $RELEASE_NOTES
|
||||
JSON_DATA=$(echo "" | jq -Rs --arg title 'Changelog for upcoming version' --arg body "$(cat changelog.md)" '{title: $title, body: $body}')
|
||||
|
||||
if [ -z "$ISSUE_NUMBER" ]; then
|
||||
curl -s -X POST "https://gitea.com/api/v1/repos/gitea/helm-gitea/issues" -H "Authorization: token ${{ secrets.ISSUE_RW_TOKEN }}" -H "Content-Type: application/json" -d "$JSON_DATA"
|
||||
else
|
||||
curl -s -X PATCH "https://gitea.com/api/v1/repos/gitea/helm-gitea/issues/$ISSUE_NUMBER" -H "Authorization: token ${{ secrets.ISSUE_RW_TOKEN }}" -H "Content-Type: application/json" -d "$JSON_DATA"
|
||||
fi
|
||||
@@ -7,9 +7,9 @@ on:
|
||||
|
||||
jobs:
|
||||
check-and-test:
|
||||
container: commitlint/commitlint:19.9.1
|
||||
container: docker.io/commitlint/commitlint:19.9.1
|
||||
name: Execute commitlint
|
||||
runs-on: docker.io/ubuntu-latest
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v5.0.0
|
||||
- name: Check PR title
|
||||
|
||||
@@ -2,8 +2,7 @@ name: generate-chart
|
||||
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
- "*"
|
||||
tags: [ '**' ]
|
||||
|
||||
jobs:
|
||||
generate-chart-publish:
|
||||
@@ -65,11 +64,11 @@ jobs:
|
||||
OLD_TAG="$(git tag --sort=-version:refname | head --lines 2 | tail --lines 1)"
|
||||
.gitea/scripts/add-annotations.sh "${OLD_TAG}" "${NEW_TAG}"
|
||||
|
||||
- name: Print Chart.yaml
|
||||
- name: Print Chart.yaml on stdout
|
||||
run: cat Chart.yaml
|
||||
|
||||
# Using helm gpg plugin as 'helm package --sign' has issues with gpg2: https://github.com/helm/helm/issues/2843
|
||||
- name: package chart
|
||||
- name: Package Helm chart
|
||||
run: |
|
||||
echo ${{ secrets.DOCKER_CHARTS_PASSWORD }} | docker login -u ${{ secrets.DOCKER_CHARTS_USERNAME }} --password-stdin
|
||||
# FIXME: use upstream after https://github.com/technosophos/helm-gpg/issues/1 is solved
|
||||
@@ -85,7 +84,7 @@ jobs:
|
||||
helm push gitea/gitea-${GITHUB_REF#refs/tags/v}.tgz oci://registry-1.docker.io/giteacharts
|
||||
helm registry logout registry-1.docker.io
|
||||
|
||||
- name: aws credential configure
|
||||
- name: Configure AWS credentials
|
||||
uses: https://github.com/aws-actions/configure-aws-credentials@v5
|
||||
with:
|
||||
aws-access-key-id: ${{ secrets.AWS_KEY_ID }}
|
||||
@@ -97,11 +96,11 @@ jobs:
|
||||
aws s3 sync gitea/ s3://${{ secrets.AWS_S3_BUCKET}}/charts/
|
||||
|
||||
release-gitea:
|
||||
container: docker.io/thegeeklab/git-sv:2.0.5
|
||||
needs: generate-chart-publish
|
||||
runs-on: ubuntu-latest
|
||||
container: docker.io/thegeeklab/git-sv:2.0.5
|
||||
steps:
|
||||
- name: install tools
|
||||
- name: Install packages via apt
|
||||
run: |
|
||||
apk add -q --update --no-cache nodejs
|
||||
- uses: actions/checkout@v5.0.0
|
||||
|
||||
29
.gitea/workflows/update-changelog.yml
Normal file
29
.gitea/workflows/update-changelog.yml
Normal file
@@ -0,0 +1,29 @@
|
||||
name: Update changelog
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ "main" ]
|
||||
workflow_dispatch: {}
|
||||
|
||||
jobs:
|
||||
changelog:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Install packages via apt-get
|
||||
run: |
|
||||
apt-get update &&
|
||||
apt-get install --yes curl jq
|
||||
- uses: actions/checkout@v5.0.0
|
||||
with:
|
||||
fetch-depth: 0
|
||||
- name: Install git-sv
|
||||
env:
|
||||
GIT_SV_VERSION: v2.0.4 # renovate: datasource=github-releases depName=thegeeklab/git-sv
|
||||
run: |
|
||||
curl --fail --location --output /usr/local/bin/git-sv --silent --show-error https://github.com/thegeeklab/git-sv/releases/download/${GIT_SV_VERSION}/git-sv-linux-$(dpkg --print-architecture)
|
||||
chmod +x /usr/local/bin/git-sv
|
||||
git-sv --version
|
||||
- name: Update changelog issue
|
||||
env:
|
||||
ISSUE_RW_TOKEN: ${{ secrets.ISSUE_RW_TOKEN }}
|
||||
run: .gitea/scripts/update-changelog.sh
|
||||
18
templates/tests/test-http-connection.yaml
Normal file
18
templates/tests/test-http-connection.yaml
Normal file
@@ -0,0 +1,18 @@
|
||||
{{- if .Values.test.enabled }}
|
||||
apiVersion: v1
|
||||
kind: Pod
|
||||
metadata:
|
||||
name: "{{ include "gitea.fullname" . }}-test-connection"
|
||||
namespace: {{ .Values.namespace | default .Release.Namespace }}
|
||||
labels:
|
||||
{{ include "gitea.labels" . | nindent 4 }}
|
||||
annotations:
|
||||
"helm.sh/hook": test-success
|
||||
spec:
|
||||
containers:
|
||||
- name: wget
|
||||
image: "{{ .Values.test.image.name }}:{{ .Values.test.image.tag }}"
|
||||
command: ['wget']
|
||||
args: ['{{ include "gitea.fullname" . }}-http:{{ .Values.service.http.port }}']
|
||||
restartPolicy: Never
|
||||
{{- end }}
|
||||
Reference in New Issue
Block a user