pict-rs/.drone.yml
Aode (lion) 2de4f30466
All checks were successful
continuous-integration/drone/push Build is passing
Test drone docker push
2021-12-03 19:20:02 -06:00

300 lines
4.6 KiB
YAML

kind: pipeline
type: docker
name: clippy
platform:
arch: amd64
clone:
disable: true
steps:
- name: clone
image: alpine/git:latest
user: root
commands:
- git clone $DRONE_GIT_HTTP_URL .
- git checkout $DRONE_COMMIT
- chown -R 991:991 .
- name: clippy
image: asonix/rust-builder:amd64-latest
pull: always
commands:
- rustup component add clippy
- cargo clippy --no-default-features
- cargo clippy --no-default-features --features io-uring
- cargo clippy --no-default-features --features object-storage
- cargo clippy --no-default-features --features object-storage,io-uring
trigger:
event:
- push
- pull_request
---
kind: pipeline
type: docker
name: tests
platform:
arch: amd64
clone:
disable: true
steps:
- name: clone
image: alpine/git:latest
user: root
commands:
- git clone $DRONE_GIT_HTTP_URL .
- git checkout $DRONE_COMMIT
- chown -R 991:991 .
- name: tests
image: asonix/rust-builder:amd64-latest
pull: always
commands:
- cargo test
trigger:
event:
- push
- pull_request
---
kind: pipeline
type: docker
name: check-amd64
platform:
arch: amd64
clone:
disable: true
steps:
- name: clone
image: alpine/git:latest
user: root
commands:
- git clone $DRONE_GIT_HTTP_URL .
- git checkout $DRONE_COMMIT
- chown -R 991:991 .
- name: build
image: asonix/rust-builder:amd64-latest
pull: always
commands:
- cargo check --target=$TARGET
trigger:
event:
- push
- pull_request
---
kind: pipeline
type: docker
name: build-amd64
platform:
arch: amd64
clone:
disable: true
steps:
- name: clone
image: alpine/git:latest
user: root
commands:
- git clone $DRONE_GIT_HTTP_URL .
- git checkout $DRONE_COMMIT
- chown -R 991:991 .
- name: build
image: asonix/rust-builder:amd64-latest
pull: always
commands:
- cargo build --target=$TARGET --release
- $TOOL-strip target/$TARGET/release/pict-rs
- name: push
image: plugins/docker
settings:
username: asonix
password:
from_secret: dockerhub_token
repo: asonix/pictrs
dockerfile: docker/drone/Dockerfile
auto_tag: true
auto_tag_suffix: amd64
build_args:
- REPO_ARCH=amd64
- TARGET=x86_64-unknown-linux-musl
trigger:
event:
- tag
---
kind: pipeline
type: docker
name: check-arm64v8
platform:
arch: amd64
clone:
disable: true
steps:
- name: clone
image: alpine/git:latest
user: root
commands:
- git clone $DRONE_GIT_HTTP_URL .
- git checkout $DRONE_COMMIT
- chown -R 991:991 .
- name: build
image: asonix/rust-builder:arm64v8-latest
pull: always
commands:
- cargo check --target=$TARGET
trigger:
event:
- push
- pull_request
---
kind: pipeline
type: docker
name: build-arm64v8
platform:
arch: amd64
clone:
disable: true
steps:
- name: clone
image: alpine/git:latest
user: root
commands:
- git clone $DRONE_GIT_HTTP_URL .
- git checkout $DRONE_COMMIT
- chown -R 991:991 .
- name: build
image: asonix/rust-builder:arm64v8-latest
pull: always
commands:
- cargo build --target=$TARGET --release
- $TOOL-strip target/$TARGET/release/pict-rs
- name: push
image: plugins/docker
settings:
username: asonix
password:
from_secret: dockerhub_token
repo: asonix/pictrs
dockerfile: docker/drone/Dockerfile
auto_tag: true
auto_tag_suffix: arv64v8
build_args:
- REPO_ARCH=arm64v8
- TARGET=aarch64-unknown-linux-musl
trigger:
event:
- tag
---
kind: pipeline
type: docker
name: check-arm32v7
platform:
arch: amd64
clone:
disable: true
steps:
- name: clone
image: alpine/git:latest
user: root
commands:
- git clone $DRONE_GIT_HTTP_URL .
- git checkout $DRONE_COMMIT
- chown -R 991:991 .
- name: build
image: asonix/rust-builder:arm32v7-latest
pull: always
commands:
- cargo check --target=$TARGET
trigger:
event:
- push
- pull_request
---
kind: pipeline
type: docker
name: build-arm32v7
platform:
arch: amd64
clone:
disable: true
steps:
- name: clone
image: alpine/git:latest
user: root
commands:
- git clone $DRONE_GIT_HTTP_URL .
- git checkout $DRONE_COMMIT
- chown -R 991:991 .
- name: build
image: asonix/rust-builder:arm32v7-latest
pull: always
commands:
- cargo build --target=$TARGET --release
- $TOOL-strip target/$TARGET/release/pict-rs
- name: push
image: plugins/docker
settings:
username: asonix
password:
from_secret: dockerhub_token
repo: asonix/pictrs
dockerfile: docker/drone/Dockerfile
auto_tag: true
auto_tag_suffix: arm32v7
build_args:
- REPO_ARCH=arm32v7
- TARGET=armv7-unknown-linux-musleabifh
trigger:
event:
- tag