common.gitlab-ci.yml 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. stages:
  2. - build
  3. - deploy
  4. variables:
  5. GIT_SSL_NO_VERIFY: 'true'
  6. GIT_STRATEGY: clone
  7. #############
  8. # Build App #
  9. #############
  10. build:
  11. stage: build
  12. when: manual
  13. image: node:21
  14. artifacts:
  15. expire_in: 1 day
  16. paths:
  17. - aktivisda-core/dist
  18. variables:
  19. PUBLIC_PATH: $ROOT_URL
  20. script:
  21. - echo "building app for any push on any branch or for release tags..."
  22. - git clone --depth 1 https://framagit.org/aktivisda/aktivisda.git -b $(python3 -c "import json; x = json.load(open('local/localconfig.json', 'r')); print(x['aktivisda']['ref'] if 'aktivisda' in x else 'main')") aktivisda-core
  23. - cd aktivisda-core/aktivisda-library
  24. - npm install
  25. - npm run build
  26. - cd ..
  27. - npm install
  28. - cd ..
  29. - npm run build:aktivisda
  30. - npm run build:backtivisda
  31. tags:
  32. - docker
  33. rules:
  34. - if: $CI_PIPELINE_SOURCE == "schedule"
  35. when: never
  36. - if: $CI_COMMIT_BRANCH != $CI_DEFAULT_BRANCH
  37. when: never
  38. - when: always
  39. ##########
  40. # Deploy #
  41. ##########
  42. deploy-server:
  43. stage: deploy
  44. image: debian:10
  45. before_script:
  46. script:
  47. - apt-get update
  48. - apt-get install -y lftp
  49. - lftp -e "set ssl:verify-certificate no;set sftp:auto-confirm yes;open sftp://$FTP_HOST -p $FTP_PORT; user $FTP_USER $FTP_PASSWORD; mirror --reverse --verbose --delete aktivisda-core/dist/aktivisda $REMOTE_DIR;exit"
  50. - lftp -e "set ssl:verify-certificate no;set sftp:auto-confirm yes;open sftp://$FTP_HOST -p $FTP_PORT; user $FTP_USER $FTP_PASSWORD; mirror --reverse --verbose --delete aktivisda-core/dist/backtivisda $REMOTE_DIR/backtivisda;exit"
  51. tags:
  52. - docker
  53. needs: ['build']
  54. dependencies: ['build']
  55. rules:
  56. - if: $CI_PIPELINE_SOURCE == "schedule"
  57. when: never
  58. - if: $CI_COMMIT_BRANCH != $CI_DEFAULT_BRANCH
  59. when: never
  60. - when: always