Skip to content

Commit

Permalink
ci: add windows qa
Browse files Browse the repository at this point in the history
  • Loading branch information
chesedo committed Apr 24, 2023
1 parent 838bc3d commit e453941
Showing 1 changed file with 170 additions and 117 deletions.
287 changes: 170 additions & 117 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -479,124 +479,177 @@ jobs:
# - run:
# name: Test Docker
# command: ./.circleci/qa-docker.sh
windows-qa:
executor:
name: win/server-2022
# size: medium
size: xlarge
shell: powershell.exe
environment:
CARGO_NET_GIT_FETCH_WITH_CLI: "true"
PATH: "$PATH:$USERPROFILE\\.cargo\\bin"
steps:
- run: echo "$SHUTTLE_API_KEY"
# - checkout
# - run:
# name: "Install Protobuf"
# command: |
# brew install protobuf
# - run:
# name: Install Rust
# command: |
# wget -OutFile "C:\rustup-init.exe" https://static.rust-lang.org/rustup/dist/x86_64-pc-windows-msvc/rustup-init.exe
# C:\rustup-init.exe -y --default-toolchain 1.68.0 --target x86_64-pc-windows-msvc
# - run:
# name: "Install Shuttle"
# command: ..\.cargo\bin\cargo.exe install cargo-shuttle --path ./cargo-shuttle
# - run: ..\.cargo\bin\cargo.exe shuttle --version
# - run:
# name: Login
# command: |
# ..\.cargo\bin\cargo.exe shuttle login --api-key ${SHUTTLE_API_KEY}
# - run:
# name: QA
# command: ./.circleci/qa.sh windows
# environment:
# SHUTTLE_API: https://api.unstable.shuttle.rs
# - run: git submodule sync
# - run: git submodule update --init
# - run:
# name: Test WASM
# command: ./.circleci/qa-wasm.sh
# - run:
# name: "Install Docker"
# command: |
# brew install --cask docker
# - run:
# name: Test Docker
# command: ./.circleci/qa-docker.sh

workflows:
ci:
jobs:
- workspace
- check-standalone:
name: << matrix.path >>
matrix:
parameters:
path:
- resources/aws-rds
- resources/persist
- resources/secrets
- resources/shared-db
- resources/static-folder
- services/shuttle-actix-web
- services/shuttle-axum
- services/shuttle-next
- services/shuttle-poem
- services/shuttle-poise
- services/shuttle-rocket
- services/shuttle-salvo
- services/shuttle-serenity
- services/shuttle-thruster
- services/shuttle-tide
- services/shuttle-tower
- services/shuttle-warp
- platform-test:
name: << matrix.crate >>
requires:
- workspace
matrix:
parameters:
crate:
[
"shuttle-auth",
"cargo-shuttle",
"shuttle-codegen",
"shuttle-common",
"shuttle-deployer",
"shuttle-proto",
"shuttle-provisioner",
"shuttle-runtime",
"shuttle-service",
]
- e2e-test:
requires:
- platform-test
- check-standalone
filters:
branches:
only: production
- build-and-push:
requires:
- e2e-test
filters:
branches:
only: production
# ci:
# jobs:
# - workspace
# - check-standalone:
# name: << matrix.path >>
# matrix:
# parameters:
# path:
# - resources/aws-rds
# - resources/persist
# - resources/secrets
# - resources/shared-db
# - resources/static-folder
# - services/shuttle-actix-web
# - services/shuttle-axum
# - services/shuttle-next
# - services/shuttle-poem
# - services/shuttle-poise
# - services/shuttle-rocket
# - services/shuttle-salvo
# - services/shuttle-serenity
# - services/shuttle-thruster
# - services/shuttle-tide
# - services/shuttle-tower
# - services/shuttle-warp
# - platform-test:
# name: << matrix.crate >>
# requires:
# - workspace
# matrix:
# parameters:
# crate:
# [
# "shuttle-auth",
# "cargo-shuttle",
# "shuttle-codegen",
# "shuttle-common",
# "shuttle-deployer",
# "shuttle-proto",
# "shuttle-provisioner",
# "shuttle-runtime",
# "shuttle-service",
# ]
# - e2e-test:
# requires:
# - platform-test
# - check-standalone
# filters:
# branches:
# only: production
# - build-and-push:
# requires:
# - e2e-test
# filters:
# branches:
# only: production
release:
jobs:
- linux-qa:
filters:
branches:
only: production
- mac-qa:
filters:
branches:
only: production
- build-binaries-linux:
name: build-binaries-x86_64-gnu
image: ubuntu-2204:2022.04.1
target: x86_64-unknown-linux-gnu
protoc_arch: linux-x86_64
resource_class: xlarge
requires:
- linux-qa
filters:
branches:
only: production
- build-binaries-linux:
name: build-binaries-x86_64-musl
image: ubuntu-2204:2022.04.1
target: x86_64-unknown-linux-musl
protoc_arch: linux-x86_64
resource_class: xlarge
requires:
- linux-qa
filters:
branches:
only: production
- build-binaries-linux:
name: build-binaries-aarch64
image: ubuntu-2004:202101-01
target: aarch64-unknown-linux-musl
protoc_arch: linux-aarch_64
resource_class: arm.xlarge
requires:
- linux-qa
filters:
branches:
only: production
- build-binaries-windows:
filters:
branches:
only: production
- build-binaries-mac:
requires:
- mac-qa
filters:
branches:
only: production
- publish-github-release:
requires:
- build-binaries-x86_64-gnu
- build-binaries-x86_64-musl
- build-binaries-aarch64
- build-binaries-windows
- build-binaries-mac
filters:
branches:
only: production
# - linux-qa:
# filters:
# branches:
# only: production
# - mac-qa:
# filters:
# branches:
# only: production
- windows-qa
# - windows-qa:
# filters:
# branches:
# only: production
# - build-binaries-linux:
# name: build-binaries-x86_64-gnu
# image: ubuntu-2204:2022.04.1
# target: x86_64-unknown-linux-gnu
# protoc_arch: linux-x86_64
# resource_class: xlarge
# requires:
# - linux-qa
# filters:
# branches:
# only: production
# - build-binaries-linux:
# name: build-binaries-x86_64-musl
# image: ubuntu-2204:2022.04.1
# target: x86_64-unknown-linux-musl
# protoc_arch: linux-x86_64
# resource_class: xlarge
# requires:
# - linux-qa
# filters:
# branches:
# only: production
# - build-binaries-linux:
# name: build-binaries-aarch64
# image: ubuntu-2004:202101-01
# target: aarch64-unknown-linux-musl
# protoc_arch: linux-aarch_64
# resource_class: arm.xlarge
# requires:
# - linux-qa
# filters:
# branches:
# only: production
# - build-binaries-windows:
# requires:
# - windows-qa
# filters:
# branches:
# only: production
# - build-binaries-mac:
# requires:
# - mac-qa
# filters:
# branches:
# only: production
# - publish-github-release:
# requires:
# - build-binaries-x86_64-gnu
# - build-binaries-x86_64-musl
# - build-binaries-aarch64
# - build-binaries-windows
# - build-binaries-mac
# filters:
# branches:
# only: production

0 comments on commit e453941

Please sign in to comment.