update
This commit is contained in:
17
scripts/gitlab/update-chart.ps1
Normal file
17
scripts/gitlab/update-chart.ps1
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
Install-Module -Name powershell-yaml -Confirm:$false -Force
|
||||||
|
|
||||||
|
$template = (Invoke-RestMethod -Headers @{ 'PRIVATE-TOKEN'= $ENV:CI_JOB_TOKEN } `
|
||||||
|
-Uri "https://gitlab.com/api/v4/projects/45028985/repository/files/durpapi%2FChart.yaml/raw?ref=main") | ConvertFrom-Yaml
|
||||||
|
$template.version = $ENV:VERSION
|
||||||
|
|
||||||
|
$body = @{
|
||||||
|
branch = "main"
|
||||||
|
commit_message = "Update Chart"
|
||||||
|
content = "$($template | convertto-yaml)"
|
||||||
|
} | ConvertTo-Json
|
||||||
|
|
||||||
|
Invoke-RestMethod -Headers @{ 'PRIVATE-TOKEN'= $ENV:CI_JOB_TOKEN } `
|
||||||
|
-ContentType "application/json" `
|
||||||
|
-Method Put `
|
||||||
|
-body $body `
|
||||||
|
-Uri "https://gitlab.com/api/v4/projects/45028985/repository/files/durpapi%2FChart.yaml"
|
||||||
@@ -2,6 +2,22 @@
|
|||||||
#%%MULTILINE_YAML_START
|
#%%MULTILINE_YAML_START
|
||||||
# render job-templates.yml from job-templates.tpl.yml
|
# render job-templates.yml from job-templates.tpl.yml
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
for pwsh in $(find ./scripts -name '*.ps1'); do
|
||||||
|
script=$(cat $pwsh)
|
||||||
|
sh_file="${pwsh%.ps1}.sh"
|
||||||
|
|
||||||
|
# Escape double quotes and dollar signs
|
||||||
|
script="${script//\"/\\\"}"
|
||||||
|
script="${script//\$/\\\$}"
|
||||||
|
|
||||||
|
pwsh_command="pwsh -c \"$script\""
|
||||||
|
|
||||||
|
echo '#!/bin/bash' > "$sh_file"
|
||||||
|
echo "$pwsh_command" >> "$sh_file"
|
||||||
|
done
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
for script in $(find ./scripts -name '*.sh'); do
|
for script in $(find ./scripts -name '*.sh'); do
|
||||||
awk -v script_name="$(basename "$script")" '
|
awk -v script_name="$(basename "$script")" '
|
||||||
NR==1 && /^#!/ {printf("# Begin of %s\n",script_name); next} # strip shebang in first line, print head comment
|
NR==1 && /^#!/ {printf("# Begin of %s\n",script_name); next} # strip shebang in first line, print head comment
|
||||||
|
|||||||
@@ -6,3 +6,18 @@
|
|||||||
expire_in: 1 hour
|
expire_in: 1 hour
|
||||||
paths:
|
paths:
|
||||||
- $CI_PROJECT_DIR/output
|
- $CI_PROJECT_DIR/output
|
||||||
|
|
||||||
|
.gitlab-deploy:
|
||||||
|
stage: deploy
|
||||||
|
image: mcr.microsoft.com/powershell:latest
|
||||||
|
script:
|
||||||
|
- ./scripts/gitlab/update-chart.sh
|
||||||
|
environment:
|
||||||
|
name: production
|
||||||
|
url: https://api.durp.info/goapi
|
||||||
|
rules:
|
||||||
|
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH || $CI_COMMIT_BRANCH =~ '/^release/'
|
||||||
|
when: manual
|
||||||
|
needs:
|
||||||
|
- job: version
|
||||||
|
artifacts: true
|
||||||
|
|||||||
Reference in New Issue
Block a user