diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 91d7e4bb..c7e6eddf 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,6 +1,6 @@ stages: - build - - meta + - deploy # Cache modules in between jobs cache: @@ -8,71 +8,42 @@ cache: paths: - node_modules/ -# Basic webapp build -build: - stage: build - image: electronuserland/builder:wine - script: - - npm install - - npm run build:web - artifacts: - name: "build" - paths: - - dist/ - only: - - stable - - tags - - web - - # Electron app build -package: +build: stage: build image: electronuserland/builder:wine script: - npm install - npm run build:app - npm run release - - shopt -s extglob - - mv ./release-builds/*.AppImage . - - mv ./release-builds/*.deb . - - mv ./release-builds/*.exe . - - mv ./release-builds/*.exe.blockmap . - - mv ./release-builds/?(beta*.yml|latest*.yml) . artifacts: name: "dist" + expire_in: 1 hour paths: - - "*.AppImage" - - "*.deb" - - "*.exe" - - "*.exe.blockmap" - - "latest*.yml" - - "beta*.yml" + - "./release-builds/*.AppImage" + - "./release-builds/*.exe" + - "./release-builds/*.exe.blockmap" + - "./release-builds/latest*.yml" + - "./release-builds/beta*.yml" only: - - stable + - web - tags + +deploy: + stage: deploy + dependencies: + - build + image: ubuntu:latest + before_script: + - 'which ssh-agent || ( apt-get update -y && apt-get install openssh-client -y )' + - eval $(ssh-agent -s) + - ssh-add <(echo "$SSH_PRIVATE_KEY_BASE64" | base64 --decode) + - mkdir -p ~/.ssh + - echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config + script: + - 'which rsync || ( apt-get update -y && apt-get install rsync -y )' + - mkdir -p "./release-builds" + - rsync -hrvz -e ssh release-builds/ ci-user@openflexure.bath.ac.uk:/var/www/build/openflexure-ev/ + only: - web -# Create a nupkg file for Choco package manager -meta:choco: - stage: meta - dependencies: - - package - image: patrickhuber/choco-linux - script: - - chmod +x ./app/make-nupkg.sh - - ./app/make-nupkg.sh - - cd ./release-builds/choco - - choco pack - - cd ../../ - - mv ./release-builds/choco/openflexure-ev.nuspec . - - mv ./release-builds/choco/*.nupkg . - - mv ./release-builds/choco/tools . - artifacts: - name: "openflexure-ev-choco-nupkg" - paths: - - ./openflexure-ev.nuspec - - tools/chocolateyInstall.ps1 - - ./*.nupkg - only: - - tags diff --git a/app/app.js b/app/app.js index 34c5c85a..e9b56f12 100644 --- a/app/app.js +++ b/app/app.js @@ -12,11 +12,6 @@ const { store } = require('./store') // Auto upadater autoUpdater.autoDownload = false; -autoUpdater.setFeedURL({ - provider: "generic", - url: "https://gitlab.com/openflexure/openflexure-microscope-jsclient/-/jobs/artifacts/stable/raw?job=package" -}); - autoUpdater.on('checking-for-update', function () {}); autoUpdater.on('update-available', function (info) { diff --git a/app/builder-config-base.yaml b/app/builder-config-base.yaml index d62cf387..1a1e9fe8 100644 --- a/app/builder-config-base.yaml +++ b/app/builder-config-base.yaml @@ -2,11 +2,11 @@ directories: output: release-builds buildResources: app/resources appId: org.openflexure.ev -artifactName: ${name}-${os}-${arch}.${ext} +artifactName: ${name}-${version}-${os}-${arch}.${ext} asar: true publish: - provider: generic - url: https://gitlab.com + url: https://build.openflexure.org/openflexure-ev/ files: - filter: - '**/*' diff --git a/package.json b/package.json index e61d6d4c..0baf0fa8 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "openflexure-ev", - "version": "1.1.1", + "version": "1.1.2", "private": true, "description": "An electron-based user client for the OpenFlexure Microscope Server", "author": "OpenFlexure (https://www.openflexure.org)",