summaryrefslogtreecommitdiff
path: root/.gitlab-ci.yml
diff options
context:
space:
mode:
authorLain Soykaf <lain@lain.com>2024-05-20 12:30:15 +0400
committerLain Soykaf <lain@lain.com>2024-05-20 12:30:15 +0400
commitad26b6d593d83ddb539a5c61ee9f639f7b40531e (patch)
tree7df211d68414fea73074731b31be9f700cff8883 /.gitlab-ci.yml
parentddb9e90c405369496fdf9e6dfed593eff8d5dc5c (diff)
parente8cd6662eb2a534e3be16b522bf81b25b194edab (diff)
downloadpleroma-ad26b6d593d83ddb539a5c61ee9f639f7b40531e.tar.gz
pleroma-ad26b6d593d83ddb539a5c61ee9f639f7b40531e.zip
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into bump-elixir
Diffstat (limited to '.gitlab-ci.yml')
-rw-r--r--.gitlab-ci.yml97
1 files changed, 53 insertions, 44 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 8f10790da..2e321c978 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -26,9 +26,10 @@ cache: &global_cache_policy
- _build
stages:
- - check-changelog
- build
+ - lint
- test
+ - check-changelog
- benchmark
- deploy
- release
@@ -71,7 +72,7 @@ check-changelog:
tags:
- amd64
-build:
+build-1.12.3:
extends:
- .build_changes_policy
- .using-ci-base
@@ -79,10 +80,20 @@ build:
script:
- mix compile --force
+build-1.15.7-otp-25:
+ extends:
+ - .build_changes_policy
+ - .using-ci-base
+ stage: build
+ image: git.pleroma.social:5050/pleroma/pleroma/ci-base:elixir-1.15
+ allow_failure: true
+ script:
+ - mix compile --force
+
spec-build:
extends:
- .using-ci-base
- stage: test
+ stage: build
rules:
- changes:
- ".gitlab-ci.yml"
@@ -102,7 +113,7 @@ benchmark:
variables:
MIX_ENV: benchmark
services:
- - name: postgres:9.6-alpine
+ - name: postgres:11.22-alpine
alias: postgres
command: ["postgres", "-c", "fsync=off", "-c", "synchronous_commit=off", "-c", "full_page_writes=off"]
script:
@@ -110,7 +121,7 @@ benchmark:
- mix ecto.migrate
- mix pleroma.load_testing
-unit-testing:
+unit-testing-1.12.3:
extends:
- .build_changes_policy
- .using-ci-base
@@ -118,12 +129,11 @@ unit-testing:
cache: &testing_cache_policy
<<: *global_cache_policy
policy: pull
-
- services:
+ services: &testing_services
- name: postgres:13-alpine
alias: postgres
command: ["postgres", "-c", "fsync=off", "-c", "synchronous_commit=off", "-c", "full_page_writes=off"]
- script:
+ script: &testing_script
- mix ecto.create
- mix ecto.migrate
- mix test --cover --preload-modules
@@ -134,49 +144,35 @@ unit-testing:
coverage_format: cobertura
path: coverage.xml
-unit-testing-erratic:
+unit-testing-1.15.7-otp-25:
extends:
- .build_changes_policy
- .using-ci-base
stage: test
- retry: 2
+ image: git.pleroma.social:5050/pleroma/pleroma/ci-base:elixir-1.15-otp25
allow_failure: true
- cache: &testing_cache_policy
- <<: *global_cache_policy
- policy: pull
-
- services:
- - name: postgres:13-alpine
- alias: postgres
- command: ["postgres", "-c", "fsync=off", "-c", "synchronous_commit=off", "-c", "full_page_writes=off"]
- script:
- - mix ecto.create
- - mix ecto.migrate
- - mix test --only=erratic
+ cache: *testing_cache_policy
+ services: *testing_services
+ script: *testing_script
-unit-testing-rum:
+unit-testing-1.12-erratic:
extends:
- .build_changes_policy
- .using-ci-base
stage: test
+ retry: 2
+ allow_failure: true
cache: *testing_cache_policy
- services:
- - name: git.pleroma.social:5050/pleroma/pleroma/postgres-with-rum-13
- alias: postgres
- command: ["postgres", "-c", "fsync=off", "-c", "synchronous_commit=off", "-c", "full_page_writes=off"]
- variables:
- <<: *global_variables
- RUM_ENABLED: "true"
+ services: *testing_services
script:
- mix ecto.create
- mix ecto.migrate
- - "mix ecto.migrate --migrations-path priv/repo/optional_migrations/rum_indexing/"
- - mix test --preload-modules
+ - mix test --only=erratic
-lint:
+formatting-1.13:
extends: .build_changes_policy
- image: &current_elixir elixir:1.13-alpine
- stage: test
+ image: &formatting_elixir elixir:1.13-alpine
+ stage: lint
cache: *testing_cache_policy
before_script: &current_bfr_script
- apk update
@@ -187,24 +183,37 @@ lint:
script:
- mix format --check-formatted
+cycles-1.13:
+ extends: .build_changes_policy
+ image: *formatting_elixir
+ stage: lint
+ cache: {}
+ before_script: *current_bfr_script
+ script:
+ - mix compile
+ - mix xref graph --format cycles --label compile | awk '{print $0} END{exit ($0 != "No cycles found")}'
+
analysis:
extends:
- .build_changes_policy
- .using-ci-base
- stage: test
+ stage: lint
cache: *testing_cache_policy
script:
- mix credo --strict --only=warnings,todo,fixme,consistency,readability
-cycles:
- extends: .build_changes_policy
- image: *current_elixir
- stage: test
- cache: {}
- before_script: *current_bfr_script
+dialyzer:
+ extends:
+ - .build_changes_policy
+ - .using-ci-base
+ stage: lint
+ allow_failure: true
+ when: manual
+ cache: *testing_cache_policy
+ tags:
+ - feld
script:
- - mix compile
- - mix xref graph --format cycles --label compile | awk '{print $0} END{exit ($0 != "No cycles found")}'
+ - mix dialyzer
docs-deploy:
stage: deploy