kind: pipeline type: docker name: windows steps: - name: build pull: always image: rust:alpine commands: - apk add --no-cache mingw-w64-gcc musl-dev - mkdir ~/.cargo - echo -e '[target.x86_64-pc-windows-gnu]\nlinker = "x86_64-w64-mingw32-gcc"\nar = "x86_64-w64-mingw32-gcc-ar"' > ~/.cargo/config - rustup target add x86_64-pc-windows-gnu - rustup component add clippy - cargo test - cargo clippy --target x86_64-pc-windows-gnu - cargo build --release --target x86_64-pc-windows-gnu - strip target/x86_64-pc-windows-gnu/release/cggitem_sets.exe - name: deploy image: alpine:latest commands: - apk add --no-cache curl - curl -u drone:$MVN_PWD -X POST 'https://nexus.nyyu.dev/service/rest/v1/components?repository=maven-releases' -F maven2.groupId=dev.nyyu -F maven2.artifactId=cggitem_sets -F maven2.version=$(awk -F ' = ' '$1 ~ /version/ { gsub(/["]/, "", $2); printf("%s",$2) }' Cargo.toml) -F maven2.asset1=@target/x86_64-pc-windows-gnu/release/cggitem_sets.exe -F maven2.asset1.extension=exe -F maven2.asset1.classifier=mingw-x64 environment: MVN_PWD: from_secret: maven_password when: branch: - master --- kind: pipeline type: docker name: linux steps: - name: build pull: always image: rust:alpine commands: - apk add --no-cache musl-dev - rustup component add clippy - cargo test - cargo clippy - cargo build --release - strip target/release/cggitem_sets - name: deploy image: alpine:latest commands: - apk add --no-cache curl - curl -u drone:$MVN_PWD -X POST 'https://nexus.nyyu.dev/service/rest/v1/components?repository=maven-releases' -F maven2.groupId=dev.nyyu -F maven2.artifactId=cggitem_sets -F maven2.version=$(awk -F ' = ' '$1 ~ /version/ { gsub(/["]/, "", $2); printf("%s",$2) }' Cargo.toml) -F maven2.asset1=@target/release/cggitem_sets -F maven2.asset1.extension=elf -F maven2.asset1.classifier=linux-x64 environment: MVN_PWD: from_secret: maven_password when: branch: - master #--- #kind: pipeline #type: exec #name: windows-msvc #platform: # os: windows # arch: amd64 #steps: #- name: build # commands: # - rustup update # - cargo test # - cargo clippy # - cargo build --release # environment: # CARGO_HOME: c:/drone/cargo # RUSTUP_HOME: c:/drone/rustup #- name: deploy # commands: # - curl.exe -u drone:$Env:MVN_PWD -X POST https://nexus.nyyu.dev/service/rest/v1/components?repository=maven-releases -F maven2.groupId=dev.nyyu -F maven2.artifactId=cggitem_sets -F maven2.version=1.0.0 -F maven2.asset1=@target/release/cggitem_sets.exe -F maven2.asset1.extension=exe -F maven2.asset1.classifier=msvc-x64 # environment: # MVN_PWD: # from_secret: maven_password # when: # branch: # - master