An IndieWeb engine for a self-hostable website. https://koype.net/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

.gitlab-ci.yml 2.5KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. image: elixir:1.7.1-alpine
  2. variables:
  3. SE_OPTS: "--no-sandbox"
  4. HUB_HOST: http://webdriver
  5. HUB_PORT: 4444
  6. MIX_ENV: "test"
  7. MINIO_REGION: local
  8. MINIO_ACCESS_KEY: 51bcaa680ac2fa4bb9f38bde4bf6f5620c542222393f95e2e6f6d38f838e3c17
  9. MINIO_SECRET_KEY: 51bcaa680ac2fa4bb9f38bde4bf6f5620c542222393f95e2e6f6d38f838e3c17
  10. CANONICAL_HOST: localhost:5001
  11. CANONICAL_SCHEME: http
  12. GUARDIAN_SECRET_KEY: 51bcaa680ac2fa4bb9f38bde4bf6f5620c542222393f95e2e6f6d38f838e3c17
  13. ENV: test
  14. MIX_ENV: test
  15. OBJECT_STORAGE_ACCESS_KEY: 51bcaa680ac2fa4bb9f38bde4bf6f5620c542222393f95e2e6f6d38f838e3c17
  16. OBJECT_STORAGE_BUCKET: koype-test
  17. OBJECT_STORAGE_HOST: objectstorage
  18. OBJECT_STORAGE_PORT: 9000
  19. OBJECT_STORAGE_SCHEME: http://
  20. OBJECT_STORAGE_SECRET_KEY: 51bcaa680ac2fa4bb9f38bde4bf6f5620c542222393f95e2e6f6d38f838e3c17
  21. SECRET_KEY_BASE: 51bcaa680ac2fa4bb9f38bde4bf6f5620c542222393f95e2e6f6d38f838e3c17
  22. SESSION_SIGNING_SALT: 51bcaa680ac2fa4bb9f38bde4bf6f5620c542222393f95e2e6f6d38f838e3c17
  23. PORT: 5001
  24. TEST_HOST: test
  25. TEST_PORT: 5001
  26. build:
  27. stage: build
  28. script:
  29. - mix local.hex --force
  30. - mix local.rebar --force
  31. - apk add git
  32. - docker/scripts/prepare.sh
  33. - docker/scripts/build.sh
  34. - mix deps.compile
  35. - mix compile
  36. lint:
  37. stage: test
  38. script:
  39. - mix local.hex --force
  40. - mix local.rebar --force
  41. - apk add git
  42. - mix format --check-formatted
  43. setup_minio:
  44. stage: test
  45. image:
  46. name: minio/mc
  47. entrypoint: ["/bin/sh", "-c"]
  48. script:
  49. - mc config host add test http://objectstorage:9000 51bcaa680ac2fa4bb9f38bde4bf6f5620c542222393f95e2e6f6d38f838e3c17 51bcaa680ac2fa4bb9f38bde4bf6f5620c542222393f95e2e6f6d38f838e3c17
  50. - mc mb --region local test/koype-test
  51. - mc policy download test/koype-test/images
  52. - mc policy download test/koype-test/videos
  53. - mc policy download test/koype-test/audio
  54. test:
  55. stage: test
  56. services:
  57. - name: selenium/standalone-chrome:3.141.59-mercury
  58. alias: webdriver
  59. script:
  60. - mix local.hex --force
  61. - mix local.rebar --force
  62. - apk add git
  63. - mix ci --no-deps-check
  64. docs-build:
  65. stage: deploy
  66. only:
  67. - master
  68. - develop
  69. variables:
  70. MIX_ENV: dev
  71. DOC: 1
  72. script:
  73. - mix local.hex --force
  74. - mix local.rebar --force
  75. - apk add git
  76. - mix deps.get
  77. - mix compile
  78. - mix docs
  79. artifacts:
  80. paths:
  81. - priv/static/doc
  82. cache:
  83. key: "${CI_BUILD_REF_NAME}"
  84. paths:
  85. - node_modules
  86. - deps
  87. - _build
  88. services:
  89. - name: minio/minio:RELEASE.2019-03-13T21-59-47Z
  90. alias: objectstorage
  91. command: ["server", "/data"]