summaryrefslogtreecommitdiffstats
path: root/.gitlab-ci.yml
diff options
context:
space:
mode:
Diffstat (limited to '.gitlab-ci.yml')
-rw-r--r--.gitlab-ci.yml57
1 files changed, 57 insertions, 0 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 0000000..5aed991
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,57 @@
+
+# Rust caching causing bloat and using too much disk space in public gitlab.com
+# CI process
+#cache:
+# key: "${CI_COMMIT_REF_SLUG}"
+# paths:
+# - python/.venv/
+# - rust/target/
+# - rust/.cargo_cache/
+
+variables:
+ LC_ALL: "C.UTF-8"
+ LANG: "C.UTF-8"
+ PIPENV_VENV_IN_PROJECT: "true"
+ CARGO_HOME: ".cargo_cache"
+
+image: "bnewbold/fatcat-test-base:latest"
+
+unified_test:
+ variables:
+ POSTGRES_DB: "fatcat_test"
+ POSTGRES_USER: "fatcat_user"
+ POSTGRES_PASSWORD: "fatcat_pw"
+ DATABASE_URL: "postgres://fatcat_user:fatcat_pw@postgres/fatcat_test"
+ TEST_DATABASE_URL: "postgres://fatcat_user:fatcat_pw@postgres/fatcat_test"
+ services:
+ - "postgres:11"
+ before_script:
+ - export PATH="$PATH:$CARGO_HOME/bin"
+ - apt update -qy
+ - apt install -y python3-dev python3-pip python3-wheel python3-requests python3-six python3-pytest libsnappy-dev libsodium-dev software-properties-common python3.7 python3.7-dev python3.7-venv python3.7-distutils libpq-dev pkg-config python3-pytest git
+ - diesel --version || cargo install diesel_cli --version 1.3.1 --no-default-features --features postgres
+ script:
+ - rustc --version && cargo --version && diesel --version
+ - cd rust
+ - cp example.env .env
+ - diesel database reset && diesel migration run
+ - cargo build
+ - df -h
+ - df -i
+ - cargo test -- --test-threads 1
+
+rust_build_release:
+ stage: build
+ when: manual
+ before_script:
+ - export PATH="$PATH:$CARGO_HOME/bin"
+ - apt update -qy
+ - apt install -y python3-dev python3-pip python3-wheel python3-requests python3-six python3-pytest libsnappy-dev libsodium-dev
+ script:
+ - rustc --version && cargo --version
+ - cd rust
+ - ./build_tarball.sh
+ artifacts:
+ paths:
+ - rust/fatcat-rust.tar.gz
+ expire_in: 1 year