Skip to content
Snippets Groups Projects

add release script publishing in CI

Merged poka requested to merge ci-release into master
All threads resolved!
Files
2
+ 32
0
 
#!/bin/bash
 
 
# Vérifiez si le token d'accès privé GitLab est défini
 
if [ -z "$GITLAB_PRIVATE_TOKEN" ]; then
 
echo "Token d'accès privé GitLab non défini. Arrêt du script."
 
exit 1
 
fi
 
 
# Variables
 
PROJECT_ID="604"
 
RELEASE_NAME="Release $CI_COMMIT_TAG"
 
RELEASE_DESCRIPTION="Description de la release $CI_COMMIT_TAG"
 
ARTIFACT_PATH="target/release/gcli"
 
GITLAB_API_URL="https://git.duniter.org/api/v4"
 
 
# Création de la release
 
echo "Création de la release $RELEASE_NAME..."
 
curl --header "PRIVATE-TOKEN: $GITLAB_PRIVATE_TOKEN" \
 
--data "name=$RELEASE_NAME&tag_name=$CI_COMMIT_TAG&description=$RELEASE_DESCRIPTION" \
 
"$GITLAB_API_URL/projects/$PROJECT_ID/releases"
 
 
# Construction de l'URL de l'artéfact
 
ARTIFACT_URL="$CI_PROJECT_URL/-/jobs/artifacts/$CI_COMMIT_TAG/raw/$ARTIFACT_PATH?job=build"
 
 
# Ajout de l'artéfact à la release
 
echo "Ajout de l'artéfact à la release..."
 
curl --header "PRIVATE-TOKEN: $GITLAB_PRIVATE_TOKEN" \
 
--data-urlencode "url=$ARTIFACT_URL" \
 
--data-urlencode "name=$(basename $ARTIFACT_PATH)" \
 
"$GITLAB_API_URL/projects/$PROJECT_ID/releases/$CI_COMMIT_TAG/assets/links"
 
 
echo "Script terminé."
Loading