5 - name: fetch git submodules
6 image: node:15-alpine3.12
9 - git submodule update --init --recursive --remote
13 image: ekidd/rust-musl-builder:1.47.0
16 - chown 1000:1000 . -R
18 - name: check documentation build
19 image: ekidd/rust-musl-builder:1.47.0
21 - cargo install mdbook --git https://github.com/Ruin0x11/mdBook.git --branch localization --rev d06249b
24 - name: check formatting
25 image: rustdocker/rust:nightly
27 - /root/.cargo/bin/cargo fmt -- --check
30 image: ekidd/rust-musl-builder:1.47.0
32 - cargo clippy --workspace --tests --all-targets --all-features -- -D warnings -D deprecated -D clippy::perf -D clippy::complexity -D clippy::dbg_macro
35 image: ekidd/rust-musl-builder:1.47.0
37 LEMMY_DATABASE_URL: postgres://lemmy:password@database:5432/lemmy
42 - sudo apt-get -y install --no-install-recommends espeak postgresql-client
43 - cargo test --workspace --no-fail-fast
46 image: ekidd/rust-musl-builder:1.47.0
49 - mv target/x86_64-unknown-linux-musl/debug/lemmy_server target/lemmy_server
51 - name: run federation tests
52 image: node:15-alpine3.12
54 LEMMY_DATABASE_URL: postgres://lemmy:password@database:5432
55 DO_WRITE_HOSTS_FILE: 1
57 - ls -la target/lemmy_server
58 - apk add bash curl postgresql-client
59 - bash api_tests/prepare-drone-federation-test.sh
64 - name: create docker tags
65 image: ekidd/rust-musl-builder:1.47.0
67 - echo "$(git describe),latest" > .tags
72 - name: make release build and push to docker hub
75 dockerfile: docker/prod/Dockerfile
77 from_secret: docker_username
79 from_secret: docker_password
80 repo: dessalines/lemmy
87 image: postgres:12-alpine
90 POSTGRES_PASSWORD: password