Added muslc build, release on tag
This commit is contained in:
		@@ -1,14 +1,10 @@
 | 
				
			|||||||
stages:
 | 
					stages:
 | 
				
			||||||
    - build
 | 
					    - build
 | 
				
			||||||
    - package
 | 
					    - package
 | 
				
			||||||
 | 
					    - release
 | 
				
			||||||
 | 
					
 | 
				
			||||||
build_backend:
 | 
					.backend_base:
 | 
				
			||||||
    stage: build
 | 
					    stage: build
 | 
				
			||||||
    image: reg.gitlab.mattv.de/root/docker-images/ubuntu_build_base:latest
 | 
					 | 
				
			||||||
    cache:
 | 
					 | 
				
			||||||
        key: backend
 | 
					 | 
				
			||||||
        paths:
 | 
					 | 
				
			||||||
            - vcpkg_cache
 | 
					 | 
				
			||||||
    script:
 | 
					    script:
 | 
				
			||||||
        - SRC="$PWD"
 | 
					        - SRC="$PWD"
 | 
				
			||||||
        - TMP=$(mktemp -d)
 | 
					        - TMP=$(mktemp -d)
 | 
				
			||||||
@@ -24,6 +20,22 @@ build_backend:
 | 
				
			|||||||
        paths:
 | 
					        paths:
 | 
				
			||||||
            - server
 | 
					            - server
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					build_backend_glibc:
 | 
				
			||||||
 | 
					    extends: .backend_base
 | 
				
			||||||
 | 
					    image: reg.gitlab.mattv.de/root/docker-images/ubuntu_build_base:latest
 | 
				
			||||||
 | 
					    cache:
 | 
				
			||||||
 | 
					        key: backend_glibc
 | 
				
			||||||
 | 
					        paths:
 | 
				
			||||||
 | 
					            - vcpkg_cache
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					build_backend_muslc:
 | 
				
			||||||
 | 
					    extends: .backend_base
 | 
				
			||||||
 | 
					    image: reg.gitlab.mattv.de/root/docker-images/alpine_build_base:latest
 | 
				
			||||||
 | 
					    cache:
 | 
				
			||||||
 | 
					        key: backend_muslc
 | 
				
			||||||
 | 
					        paths:
 | 
				
			||||||
 | 
					            - vcpkg_cache
 | 
				
			||||||
 | 
					
 | 
				
			||||||
test_and_build_frontend:
 | 
					test_and_build_frontend:
 | 
				
			||||||
    image: node:latest
 | 
					    image: node:latest
 | 
				
			||||||
    stage: build
 | 
					    stage: build
 | 
				
			||||||
@@ -41,19 +53,64 @@ test_and_build_frontend:
 | 
				
			|||||||
        paths:
 | 
					        paths:
 | 
				
			||||||
            - frontend/dist/
 | 
					            - frontend/dist/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
package_server:
 | 
					.package_server:
 | 
				
			||||||
    image: alpine:latest
 | 
					    image: alpine:latest
 | 
				
			||||||
    stage: package
 | 
					    stage: package
 | 
				
			||||||
    before_script: []
 | 
					    artifacts:
 | 
				
			||||||
 | 
					        paths:
 | 
				
			||||||
 | 
					            - '*.tar'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					package_server_glibc:
 | 
				
			||||||
 | 
					    extends: .package_server
 | 
				
			||||||
    needs:
 | 
					    needs:
 | 
				
			||||||
        - job: build_backend
 | 
					        - job: build_backend_glibc
 | 
				
			||||||
          artifacts: true
 | 
					          artifacts: true
 | 
				
			||||||
        - job: test_and_build_frontend
 | 
					        - job: test_and_build_frontend
 | 
				
			||||||
          artifacts: true
 | 
					          artifacts: true
 | 
				
			||||||
    script:
 | 
					    script:
 | 
				
			||||||
        - mkdir static
 | 
					        - mkdir static
 | 
				
			||||||
        - mv frontend/dist/* static/
 | 
					        - mv frontend/dist/* static/
 | 
				
			||||||
    artifacts:
 | 
					        - tar -cvf linux-x64-glibc.tar server static
 | 
				
			||||||
        paths:
 | 
					
 | 
				
			||||||
            - server
 | 
					package_server_muslc:
 | 
				
			||||||
            - static/
 | 
					    extends: .package_server
 | 
				
			||||||
 | 
					    needs:
 | 
				
			||||||
 | 
					        - job: build_backend_muslc
 | 
				
			||||||
 | 
					          artifacts: true
 | 
				
			||||||
 | 
					        - job: test_and_build_frontend
 | 
				
			||||||
 | 
					          artifacts: true
 | 
				
			||||||
 | 
					    script:
 | 
				
			||||||
 | 
					        - mkdir static
 | 
				
			||||||
 | 
					        - mv frontend/dist/* static/
 | 
				
			||||||
 | 
					        - tar -cvf linux-x64-muslc.tar server static
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					upload_assets:
 | 
				
			||||||
 | 
					    stage: release
 | 
				
			||||||
 | 
					    image: curlimages/curl:latest
 | 
				
			||||||
 | 
					    needs:
 | 
				
			||||||
 | 
					        - job: package_server_glibc
 | 
				
			||||||
 | 
					          artifacts: true
 | 
				
			||||||
 | 
					        - job: package_server_muslc
 | 
				
			||||||
 | 
					          artifacts: true
 | 
				
			||||||
 | 
					    rules:
 | 
				
			||||||
 | 
					        - if: $CI_COMMIT_TAG
 | 
				
			||||||
 | 
					    script:
 | 
				
			||||||
 | 
					        - |
 | 
				
			||||||
 | 
					          curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" --upload-file "linux-x64-glibc.tar" "${PACKAGE_REGISTRY_URL}/linux-x64-glibc.tar"
 | 
				
			||||||
 | 
					        - |
 | 
				
			||||||
 | 
					          curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" --upload-file "linux-x64-muslc.tar" "${PACKAGE_REGISTRY_URL}/linux-x64-muslc.tar"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					create_release:
 | 
				
			||||||
 | 
					    stage: release
 | 
				
			||||||
 | 
					    image: registry.gitlab.com/gitlab-org/release-cli:latest
 | 
				
			||||||
 | 
					    needs:
 | 
				
			||||||
 | 
					        - upload_assets
 | 
				
			||||||
 | 
					    rules:
 | 
				
			||||||
 | 
					        - if: $CI_COMMIT_TAG
 | 
				
			||||||
 | 
					    script:
 | 
				
			||||||
 | 
					        - |
 | 
				
			||||||
 | 
					            release-cli create --name "Release $CI_COMMIT_TAG" --tag-name $CI_COMMIT_TAG \
 | 
				
			||||||
 | 
					              --assets-link "{\"name\":\"linux-x64-glibc.tar\",\"url\":\"${PACKAGE_REGISTRY_URL}/linux-x64-glibc.tar\"}" \
 | 
				
			||||||
 | 
					              --assets-link "{\"name\":\"linux-x64-muslc.tar\",\"url\":\"${PACKAGE_REGISTRY_URL}/linux-x64-muslc.tar\"}"
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user