42 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			42 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
kind: pipeline
 | 
						|
name: release
 | 
						|
 | 
						|
steps:
 | 
						|
  - name: create-script-file
 | 
						|
    image: alpine:3.13
 | 
						|
    environment:
 | 
						|
      REPO_OWNER: "insignia-live"
 | 
						|
      REPO_NAME: "setup-assistant-release"
 | 
						|
    commands:
 | 
						|
      - echo "const axios = require('axios');" > script.js
 | 
						|
      - echo "" >> script.js
 | 
						|
      - echo "function getLatestReleaseTag() {" >> script.js
 | 
						|
      - echo "  const repoOwner = process.env.REPO_OWNER;" >> script.js
 | 
						|
      - echo "  const repoName = process.env.REPO_NAME;" >> 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
 |