43 lines
1.8 KiB
YAML
43 lines
1.8 KiB
YAML
kind: pipeline
|
|
name: release
|
|
|
|
trigger:
|
|
event:
|
|
- release
|
|
|
|
steps:
|
|
- name: create-script-file
|
|
image: alpine:3.13
|
|
commands:
|
|
- echo "const axios = require('axios');" > script.js
|
|
- echo "" >> script.js
|
|
- echo "function getLatestReleaseTag() {" >> script.js
|
|
- echo " const repoOwner = 'insignia-live';" >> script.js
|
|
- echo " const repoName = 'setup-assistant-release';" >> script.js
|
|
- echo "" >> script.js
|
|
- echo " return axios" >> script.js
|
|
- echo " .get(\`https://api.github.com/repos/\${repoOwner}/\${repoName}/releases/latest\`)" >> script.js
|
|
- echo " .then((response) => response.data.tag_name)" >> script.js
|
|
- echo " .catch((error) => {" >> script.js
|
|
- echo " console.error('Error fetching latest release tag:', error.message);" >> script.js
|
|
- echo " return '0.0.0';" >> script.js
|
|
- echo " });" >> script.js
|
|
- echo "}" >> script.js
|
|
- echo "" >> script.js
|
|
- echo "getLatestReleaseTag().then((latestReleaseTag) => {" >> script.js
|
|
- echo " const targetReleaseTag = '2023-02-13-1223';" >> script.js
|
|
- echo "" >> script.js
|
|
- echo " if (latestReleaseTag > targetReleaseTag) {" >> script.js
|
|
- echo " console.log('This pipeline is run because the new release is newer than the one I have.');" >> script.js
|
|
- echo " } else if (latestReleaseTag === targetReleaseTag) {" >> script.js
|
|
- echo " console.log('The release tag is the same as the target tag.');" >> script.js
|
|
- echo " } else {" >> script.js
|
|
- echo " console.log('The new release is older than the one I have.');" >> script.js
|
|
- echo "}" >> script.js
|
|
- echo " " >> script.js
|
|
|
|
- name: run
|
|
image: node:14
|
|
commands:
|
|
- node script.js
|