--- stages: - build - push - trigger - vendor variables: GOPATH: /go APP_PATH: /go/src/0xacab.org/leap/bitmask-vpn build_test: image: registry.0xacab.org/leap/docker/bitmask-vpn:latest stage: build script: - mkdir -p /go/src/0xacab.org/leap/ - ln -s "$(pwd)" ${APP_PATH} - cd ${APP_PATH} - make get - make test - make build_bitmaskd - make build tags: - linux artifacts: paths: - 'bitmask-vpn' - 'bitmask-helper' - 'bitmask-connect' expire_in: 1 month # win_installer: # image: 0xacab.org:4567/leap/docker/bitmask-vpn:latest # stage: build # script: # - mkdir -p /go/src/0xacab.org/leap/ # - ln -s "$(pwd)" ${APP_PATH} # - cd ${APP_PATH} # # # we need to manually patch w32 until they merge #81 # - mkdir -p /go/src/github.com/AllenDang/ # - cd /go/src/github.com/AllenDang/ # - git clone https://github.com/AllenDang/w32 # - cd w32 # - curl https://downloads.leap.se/thirdparty/w32.patch | patch -p1 -N # # - cd ${APP_PATH} # # - git clone https://0xacab.org/leap/riseup_vpn # - cd riseup_vpn # - make openvpn_cross_win # - make build_cross_win # - mv dist/RiseupVPN-*.exe .. # tags: # - linux # artifacts: # name: installer_win_$CI_COMMIT_REF_NAME # paths: # - RiseupVPN-*.exe # expire_in: 1 month snap: image: registry.0xacab.org/leap/docker/bitmask-vpn:latest stage: build script: - mkdir -p /go/src/0xacab.org/leap/ - ln -s "$(pwd)" ${APP_PATH} - git clone https://0xacab.org/leap/riseup_vpn /riseup_vpn - cd /riseup_vpn - sed -i 's/https:\/\/0xacab.org\/leap\/bitmask-vpn.*$/\/go\/src\/0xacab.org\/leap\/bitmask-vpn/' snap/snapcraft.yaml - sed -i 's/git clone.*$//' snap/version.sh - sed -i 's/git -C bitmask-vpn/git -C \/go\/src\/0xacab.org\/leap\/bitmask-vpn/' snap/version.sh - snapcraft snap - mv riseup-vpn*.snap ${APP_PATH} tags: - linux artifacts: name: snap_$CI_COMMIT_REF_NAME paths: - riseup-vpn*.snap expire_in: 1 month # osx_installer: # stage: build # allow_failure: true # variables: # GOPATH: /tmp/go/ # APP_PATH: /tmp/go/src/0xacab.org/leap/bitmask-vpn # script: # - git clone https://0xacab.org/leap/riseup_vpn # - cd riseup_vpn # - make openvpn_osx # - make build_osx # tags: # - yosemite # - osx # artifacts: # name: installer_osx_$CI_COMMIT_REF_NAME # paths: # - riseup_vpn/dist/RiseupVPN-*.pkg # expire_in: 1 month branded_push: image: registry.0xacab.org/leap/docker/bitmask-vpn:latest stage: push only: - master script: # install the command-line openssh client to manage private keys - apt install -y openssh-client # activate the ssh-agent - eval $(ssh-agent -s) # load the private key, which is accessed vi a gitlab CI secret environment variable # We're using tr to fix line endings which makes ed25519 keys work # without extra base64 encoding. - ssh-add <(echo "$RISEUP_VPN_PACKAGE_SSH_KEY") - mkdir -p ~/.ssh # ensure that ssh will trust a new host, instead of asking - echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config # we also need to configure name and email for git user - git config user.name "Gitlab CI" - git config user.email "gitlabci@0xacab.org" # Add the remote repository and push to it - sometimes it already exists, and it causes the pipeline to fail, so we only add if its not already there - git remote -v |grep -q riseup-vpn || git remote add riseup-vpn git@0xacab.org:leap/riseup-vpn_package.git - git push --force riseup-vpn HEAD:incoming trigger_deb: image: registry.0xacab.org/leap/docker/buster_amd64:latest stage: trigger script: - echo "Triggering CI pipeline on https://0xacab.org/leap/riseup-vpn_package/pipelines" - "curl -X POST -F token=$RISEUP_VPN_DEB_TRIGGER_TOKEN -F ref=master https://0xacab.org/api/v4/projects/1916/trigger/pipeline" vendorize: image: registry.0xacab.org/leap/docker/bitmask-vpn:latest stage: vendor script: - 'PROVIDERS="riseup calyx" make build_all_providers' artifacts: name: installers-$CI_COMMIT_REF_NAME paths: - 'deploy/RiseupVPN-*.exe' - 'deploy/RiseupVPN-*.pkg' - 'deploy/riseup-vpn_*.deb' - 'deploy/CalyxVPN-*.exe' - 'deploy/CalyxVPN-*.pkg' - 'deploy/calyx-vpn_*.deb' expire_in: 1 month