Trying to get the script in release to work
This commit is contained in:
@@ -146,7 +146,7 @@ outputs:
|
|||||||
type: compress
|
type: compress
|
||||||
extends: _JLCPCB_compress
|
extends: _JLCPCB_compress
|
||||||
options:
|
options:
|
||||||
output: '%f_%r_JLC.%x'
|
output: '%f_JLC.%x'
|
||||||
|
|
||||||
|
|
||||||
groups:
|
groups:
|
||||||
|
|||||||
60
kibot-ci.yml
60
kibot-ci.yml
@@ -10,7 +10,7 @@ variables:
|
|||||||
GIT_SUBMODULE_STRATEGY: normal
|
GIT_SUBMODULE_STRATEGY: normal
|
||||||
GIT_SUBMODULE_FORCE_HTTPS: "true"
|
GIT_SUBMODULE_FORCE_HTTPS: "true"
|
||||||
# GIT_SUBMODULE_UPDATE_FLAGS: --remote --merge
|
# GIT_SUBMODULE_UPDATE_FLAGS: --remote --merge
|
||||||
PACKAGE_REGISTRY_URL: "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/kicad/"
|
PACKAGE_REGISTRY_URL: "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/kicad"
|
||||||
|
|
||||||
stages:
|
stages:
|
||||||
- gen_mech
|
- gen_mech
|
||||||
@@ -66,6 +66,7 @@ image:
|
|||||||
echo ${sch_arr[i-1]}
|
echo ${sch_arr[i-1]}
|
||||||
python3 $CI_PROJECT_DIR/.gitlab/.scripts/orig.py ${dir_arr[i-1]}
|
python3 $CI_PROJECT_DIR/.gitlab/.scripts/orig.py ${dir_arr[i-1]}
|
||||||
kibot -e ${dir_arr[i-1]}/${sch_arr[i-1]} -c $CI_PROJECT_DIR/.gitlab/default.kibot.yaml -d $CI_PROJECT_DIR/Fabrication/${dir_arr[i-1]} -s $SUFFIX
|
kibot -e ${dir_arr[i-1]}/${sch_arr[i-1]} -c $CI_PROJECT_DIR/.gitlab/default.kibot.yaml -d $CI_PROJECT_DIR/Fabrication/${dir_arr[i-1]} -s $SUFFIX
|
||||||
|
mv $CI_PROJECT_DIR/Fabrication/${dir_arr[i-1]}/*.zip Fabrication/ 2> /dev/null || true
|
||||||
done
|
done
|
||||||
- cd $CI_PROJECT_DIR
|
- cd $CI_PROJECT_DIR
|
||||||
|
|
||||||
@@ -105,6 +106,7 @@ image:
|
|||||||
git_tag:
|
git_tag:
|
||||||
- |
|
- |
|
||||||
if [[ $GITLAB_CI == 'true' && $CI_COMMIT_BRANCH == "main" ]]; then
|
if [[ $GITLAB_CI == 'true' && $CI_COMMIT_BRANCH == "main" ]]; then
|
||||||
|
TAG=$(echo ${CI_COMMIT_MESSAGE} | tr -d \\n)
|
||||||
echo "running git tag"
|
echo "running git tag"
|
||||||
git tag $CI_COMMIT_MESSAGE
|
git tag $CI_COMMIT_MESSAGE
|
||||||
elif [[ $CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "main" && "$CI_MERGE_REQUEST_TITLE" =~ [^a-zA-Z0-9.-_] ]]; then
|
elif [[ $CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "main" && "$CI_MERGE_REQUEST_TITLE" =~ [^a-zA-Z0-9.-_] ]]; then
|
||||||
@@ -154,6 +156,9 @@ image:
|
|||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
strip_tag:
|
||||||
|
- TAG=$(echo ${CI_COMMIT_MESSAGE} | tr -d \\n)
|
||||||
|
|
||||||
output_mech:
|
output_mech:
|
||||||
stage: gen_mech
|
stage: gen_mech
|
||||||
artifacts:
|
artifacts:
|
||||||
@@ -206,7 +211,6 @@ outputs_all:
|
|||||||
|
|
||||||
upload_job:
|
upload_job:
|
||||||
stage: upload
|
stage: upload
|
||||||
image: curlimages/curl:latest
|
|
||||||
needs:
|
needs:
|
||||||
- job: outputs_all
|
- job: outputs_all
|
||||||
artifacts: true
|
artifacts: true
|
||||||
@@ -214,13 +218,23 @@ upload_job:
|
|||||||
- if: $CI_COMMIT_TAG
|
- if: $CI_COMMIT_TAG
|
||||||
when: never # Do not run this job when a tag is created manually
|
when: never # Do not run this job when a tag is created manually
|
||||||
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH # Run this job when commits are pushed or merged to the default branch
|
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH # Run this job when commits are pushed or merged to the default branch
|
||||||
variables:
|
|
||||||
FAB_COMM: "curl --header \"JOB-TOKEN: ${CI_JOB_TOKEN}\" --upload-file Fabrication/$d ${PACKAGE_REGISTRY_URL}/$d"
|
|
||||||
script:
|
script:
|
||||||
|
- !reference [.commands, strip_tag]
|
||||||
|
- apt-get update && apt-get -y install zip curl
|
||||||
- |
|
- |
|
||||||
for f in $(find Fabrication/ \! -type d)
|
zip -r Fabrication/All.zip Fabrication/
|
||||||
|
for d in $(find Fabrication/* -maxdepth 0 -type d)
|
||||||
do
|
do
|
||||||
curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" --upload-file $f ${PACKAGE_REGISTRY_URL}/$(filename $f)
|
zip=$d.zip
|
||||||
|
zip -r $zip $d
|
||||||
|
done
|
||||||
|
for d in $(find Fabrication/ -maxdepth 1 -name '*.zip')
|
||||||
|
do
|
||||||
|
b=$(basename $d)
|
||||||
|
f=$(echo "${b%.*}")
|
||||||
|
url=${PACKAGE_REGISTRY_URL}/$TAG/$f-$TAG.zip
|
||||||
|
echo "uploading: $d to $url"
|
||||||
|
curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" --upload-file $d $url
|
||||||
done
|
done
|
||||||
artifacts:
|
artifacts:
|
||||||
when: always
|
when: always
|
||||||
@@ -228,7 +242,6 @@ upload_job:
|
|||||||
- Fabrication/**/*
|
- Fabrication/**/*
|
||||||
expire_in: 1 week
|
expire_in: 1 week
|
||||||
|
|
||||||
|
|
||||||
release_job:
|
release_job:
|
||||||
stage: release
|
stage: release
|
||||||
image: registry.gitlab.com/gitlab-org/release-cli:latest
|
image: registry.gitlab.com/gitlab-org/release-cli:latest
|
||||||
@@ -239,23 +252,24 @@ release_job:
|
|||||||
- if: $CI_COMMIT_TAG
|
- if: $CI_COMMIT_TAG
|
||||||
when: never # Do not run this job when a tag is created manually
|
when: never # Do not run this job when a tag is created manually
|
||||||
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH # Run this job when commits are pushed or merged to the default branch
|
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH # Run this job when commits are pushed or merged to the default branch
|
||||||
variables:
|
|
||||||
FAB_COMM: "echo \"--assets-link \"{\"name\":\"$d\",\"url\":\"${PACKAGE_REGISTRY_URL}/$CI_COMMIT_MESSAGE/$d\"}\" \\\""
|
|
||||||
script:
|
script:
|
||||||
|
- !reference [.commands, strip_tag]
|
||||||
|
- apk add jq curl
|
||||||
- |
|
- |
|
||||||
echo "running release_job for $CI_COMMIT_MESSAGE"
|
echo "running release_job for $TAG"
|
||||||
echo "#!/bin/bash" >> fab.sh
|
echo "#!/bin/sh" >> fab.sh
|
||||||
echo "release-cli create --name \"Release $CI_COMMIT_MESSAGE\" --tag-name $CI_COMMIT_MESSAGE \\" >> fab.sh
|
packid=$(curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" ${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages | jq .[0].id)
|
||||||
echo "--assets-link \"{\"name\":\"All\",\"url\":\"${PACKAGE_REGISTRY_URL}/$CI_COMMIT_MESSAGE\"}\" \\" >> fab.sh
|
echo "release-cli create --name \"Release $TAG\" --tag-name \"$TAG\" \\" >> fab.sh
|
||||||
for d in $(ls -d */)
|
cnt=$(curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" ${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/$packid/package_files | jq length)
|
||||||
|
ids=$(curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" ${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/$packid/package_files | jq .[].id)
|
||||||
|
names=$(curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" ${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/$packid/package_files | jq .[].file_name)
|
||||||
|
i=1
|
||||||
|
while [ "$i" -le $cnt ]
|
||||||
do
|
do
|
||||||
echo "--assets-link \"{\"name\":\"$d\",\"url\":\"${PACKAGE_REGISTRY_URL}/$CI_COMMIT_MESSAGE/$d\"}\" \\" >> fab.sh
|
id=$(echo $ids | cut -d' ' -f $i)
|
||||||
|
name=$(echo $names | cut -d' ' -f $i)
|
||||||
|
echo " --assets-link \"{\\\"name\\\":\\\"$name\\\",\\\"url\\\":\\\"${CI_PROJECT_URL}/-/package_files/$id/download\\\"}\" \\" >> fab.sh
|
||||||
|
i=$(( i + 1 ))
|
||||||
done
|
done
|
||||||
chmod u+x fab.sh
|
chmod +x fab.sh
|
||||||
./fab.sh
|
./fab.sh || true
|
||||||
artifacts:
|
|
||||||
when: always
|
|
||||||
name: "$CI_PROJECT_TITLE-$CI_COMMIT_MESSAGE"
|
|
||||||
paths:
|
|
||||||
- Fabrication/**/*
|
|
||||||
expire_in: 1 week
|
|
||||||
|
|||||||
Reference in New Issue
Block a user