Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
44 commits
Select commit Hold shift + click to select a range
d82b5dd
Initial version a plugin for Apollo Router
kamilkisiela Aug 1, 2022
4297d7a
Simplify
kamilkisiela Aug 4, 2022
e3c64ea
Extend timeout in build step to 10 minutes
kamilkisiela Aug 4, 2022
89a47e3
Update ci.yaml
kamilkisiela Aug 4, 2022
49d55f5
Fix build
kamilkisiela Aug 4, 2022
b4471b8
User-Agent based on GITHUB_SHA
kamilkisiela Aug 4, 2022
26c5a1a
.
kamilkisiela Aug 4, 2022
9adf4fd
Targets
kamilkisiela Aug 4, 2022
6c5d693
stable toolchain
kamilkisiela Aug 4, 2022
8769e18
win/lin
kamilkisiela Aug 4, 2022
c3b0b05
MacOS
kamilkisiela Aug 4, 2022
eaf22a6
Try this
kamilkisiela Aug 4, 2022
1c3bb1b
arm and musli
kamilkisiela Aug 4, 2022
c47d1ec
try again
kamilkisiela Aug 4, 2022
50b2303
No openssl
kamilkisiela Aug 4, 2022
bf747f9
Try x86_64-unknown-linux-gnu
kamilkisiela Aug 5, 2022
2a61419
Use Node
kamilkisiela Aug 5, 2022
2131d2c
I am getting bold
kamilkisiela Aug 5, 2022
e2d51e6
YES
kamilkisiela Aug 5, 2022
a272783
try this
kamilkisiela Aug 5, 2022
ffac7e4
Use fork
kamilkisiela Aug 5, 2022
88e4d99
Fix location
kamilkisiela Aug 5, 2022
c6ed86e
asd
kamilkisiela Aug 5, 2022
1dcfd27
omg
kamilkisiela Aug 5, 2022
be43db9
single filename
kamilkisiela Aug 5, 2022
5b10641
latest
kamilkisiela Aug 5, 2022
8cbf4bf
win
kamilkisiela Aug 5, 2022
18361aa
Compression
kamilkisiela Aug 5, 2022
8e7b289
Linux
kamilkisiela Aug 5, 2022
95dbfaa
Back to main branch
kamilkisiela Aug 5, 2022
449e277
Fix
kamilkisiela Aug 5, 2022
12a9b41
CI/CD
kamilkisiela Aug 5, 2022
68329f2
tmp
kamilkisiela Aug 5, 2022
caf1ca6
tmp
kamilkisiela Aug 5, 2022
4017300
Ok
kamilkisiela Aug 5, 2022
dfb22fe
Fixes
kamilkisiela Aug 5, 2022
a4e2768
tmp
kamilkisiela Aug 5, 2022
429c0b2
tmp
kamilkisiela Aug 5, 2022
565ee2e
almost there, docs left
kamilkisiela Aug 5, 2022
f91b1cd
rename
kamilkisiela Aug 8, 2022
1c6e287
Docs and minor adj
kamilkisiela Aug 8, 2022
30aa499
Make schema registry optional and allow to customize poll interval
kamilkisiela Aug 8, 2022
ccd9e69
Fix build
kamilkisiela Aug 8, 2022
c788b0a
Fix build
kamilkisiela Aug 8, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
194 changes: 194 additions & 0 deletions .github/workflows/cd.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,200 @@ jobs:
VERSION: ${{ steps.cli.outputs.version }}
run: yarn oclif promote --no-xz --sha ${GITHUB_SHA:0:7} --version $VERSION || yarn oclif promote --no-xz --sha ${GITHUB_SHA:0:8} --version $VERSION

publish_rust:
name: Publish Rust
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3
with:
fetch-depth: 2
- name: Look for changes
id: rust_changed
run: |
lines=$( git diff HEAD~ HEAD --name-only -- 'packages/libraries/router' | wc -l )
if [ $lines -gt 0 ]; then
echo '::set-output name=rust_changed::true'
fi
publish_rust_windows:
needs: publish_rust
if: needs.publish_rust.outputs.rust_changed == 'true'
name: Publish for Windows
runs-on: windows-latest
timeout-minutes: 40

steps:
- name: Checkout
uses: actions/checkout@v3

- name: Install Rust
uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true

- name: Cache Rust
uses: Swatinem/rust-cache@v1

- name: Build
uses: actions-rs/cargo@v1
with:
command: build
args: --release

- name: Compress
run: ./target/release/compress ./target/release/router.exe ./router.tar.gz

- name: Upload artifacts
uses: actions/upload-artifact@v3
with:
name: router-win
path: router.tar.gz

- name: Upload to R2
uses: randomairborne/[email protected]
with:
endpoint: https://6d5bc18cd8d13babe7ed321adba3d8ae.r2.cloudflarestorage.com
accesskeyid: ${{ secrets.R2_ACCESS_KEY_ID }}
secretaccesskey: ${{ secrets.R2_SECRET_ACCESS_KEY }}
bucket: apollo-router
file: router.tar.gz
destination: ${{ github.sha }}/win/router.tar.gz

- name: Upload to R2 as latest
uses: randomairborne/[email protected]
with:
endpoint: https://6d5bc18cd8d13babe7ed321adba3d8ae.r2.cloudflarestorage.com
accesskeyid: ${{ secrets.R2_ACCESS_KEY_ID }}
secretaccesskey: ${{ secrets.R2_SECRET_ACCESS_KEY }}
bucket: apollo-router
file: router.tar.gz
destination: latest/win/router.tar.gz

publish_rust_macos:
needs: publish_rust
if: needs.publish_rust.outputs.rust_changed == 'true'
name: Publish for MacOS
runs-on: macos-latest
timeout-minutes: 40

steps:
- name: Checkout
uses: actions/checkout@v3

- name: Install Node
uses: actions/setup-node@v2
with:
node-version: 16

- name: Install Rust
uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true

- name: Cache Rust
uses: Swatinem/rust-cache@v1

- name: Build
uses: actions-rs/cargo@v1
with:
command: build
args: --release

- name: Strip binary from debug symbols
run: strip target/release/router

- name: Compress
run: ./target/release/compress ./target/release/router ./router.tar.gz

- name: Upload artifact
uses: actions/upload-artifact@v3
with:
name: router-macos
path: router.tar.gz

- name: Upload to R2
uses: randomairborne/[email protected]
with:
endpoint: https://6d5bc18cd8d13babe7ed321adba3d8ae.r2.cloudflarestorage.com
accesskeyid: ${{ secrets.R2_ACCESS_KEY_ID }}
secretaccesskey: ${{ secrets.R2_SECRET_ACCESS_KEY }}
bucket: apollo-router
file: router.tar.gz
destination: ${{ github.sha }}/macos/router.tar.gz

- name: Upload to R2 as latest
uses: randomairborne/[email protected]
with:
endpoint: https://6d5bc18cd8d13babe7ed321adba3d8ae.r2.cloudflarestorage.com
accesskeyid: ${{ secrets.R2_ACCESS_KEY_ID }}
secretaccesskey: ${{ secrets.R2_SECRET_ACCESS_KEY }}
bucket: apollo-router
file: router.tar.gz
destination: latest/macos/router.tar.gz

publish_rust_linux:
needs: publish_rust
if: needs.publish_rust.outputs.rust_changed == 'true'
name: Publish for Linux
runs-on: ubuntu-latest
timeout-minutes: 40

steps:
- name: Checkout
uses: actions/checkout@v3

- name: Install Node
uses: actions/setup-node@v2
with:
node-version: 16

- name: Install Rust
run: |
curl https://sh.rustup.rs -sSf | sh -s -- -y
rustup target add x86_64-unknown-linux-gnu

- name: Cache Rust
uses: Swatinem/rust-cache@v1
with:
key: rust_linux_cross

- name: Build
run: cargo build --target x86_64-unknown-linux-gnu --release

- name: Strip binary from debug symbols
run: strip target/x86_64-unknown-linux-gnu/release/router

- name: Compress
run: ./target/x86_64-unknown-linux-gnu/release/compress ./target/x86_64-unknown-linux-gnu/release/router ./router.tar.gz

- name: Upload artifact
uses: actions/upload-artifact@v3
with:
name: router-linux
path: router.tar.gz

- name: Upload to R2
uses: randomairborne/[email protected]
with:
endpoint: https://6d5bc18cd8d13babe7ed321adba3d8ae.r2.cloudflarestorage.com
accesskeyid: ${{ secrets.R2_ACCESS_KEY_ID }}
secretaccesskey: ${{ secrets.R2_SECRET_ACCESS_KEY }}
bucket: apollo-router
file: router.tar.gz
destination: ${{ github.sha }}/linux/router.tar.gz

- name: Upload to R2 as latest
uses: randomairborne/[email protected]
with:
endpoint: https://6d5bc18cd8d13babe7ed321adba3d8ae.r2.cloudflarestorage.com
accesskeyid: ${{ secrets.R2_ACCESS_KEY_ID }}
secretaccesskey: ${{ secrets.R2_SECRET_ACCESS_KEY }}
bucket: apollo-router
file: router.tar.gz
destination: latest/linux/router.tar.gz

deploy:
name: 'deploy to staging'
needs: publish
Expand Down
60 changes: 53 additions & 7 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,8 @@ jobs:
with:
fetch-depth: 1

- uses: actions/setup-node@v2
- name: Install Node
uses: actions/setup-node@v2
with:
node-version: 16

Expand Down Expand Up @@ -83,7 +84,8 @@ jobs:
with:
fetch-depth: 5

- uses: actions/setup-node@v2
- name: Install Node
uses: actions/setup-node@v2
with:
node-version: 16

Expand Down Expand Up @@ -142,7 +144,8 @@ jobs:
with:
fetch-depth: 5

- uses: actions/setup-node@v2
- name: Install Node
uses: actions/setup-node@v2
with:
node-version: 16

Expand Down Expand Up @@ -181,7 +184,8 @@ jobs:
with:
fetch-depth: 1

- uses: actions/setup-node@v2
- name: Install Node
uses: actions/setup-node@v2
with:
node-version: 16

Expand All @@ -201,7 +205,7 @@ jobs:
name: Build
runs-on: ubuntu-latest
needs: setup
timeout-minutes: 5
timeout-minutes: 10

env:
TURBO_TOKEN: ${{ secrets.TURBO_TOKEN }}
Expand All @@ -215,7 +219,8 @@ jobs:
with:
fetch-depth: 5

- uses: actions/setup-node@v2
- name: Install Node
uses: actions/setup-node@v2
with:
node-version: 16

Expand All @@ -234,11 +239,52 @@ jobs:
- name: Build
run: yarn build

rust:
name: Build Rust
runs-on: ubuntu-latest
timeout-minutes: 40

steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 2

- name: Install Node
uses: actions/setup-node@v2
with:
node-version: 16

- name: Install Rust
run: |
curl https://sh.rustup.rs -sSf | sh -s -- -y
rustup target add x86_64-unknown-linux-gnu

- name: Cache Rust
uses: Swatinem/rust-cache@v1
with:
key: rust_linux_cross

- name: Build
run: cargo build --target x86_64-unknown-linux-gnu --release

- name: Strip binary from debug symbols
run: strip target/x86_64-unknown-linux-gnu/release/router

- name: Compress
run: ./target/x86_64-unknown-linux-gnu/release/compress ./target/x86_64-unknown-linux-gnu/release/router ./router.tar.gz

- name: Upload artifact
uses: actions/upload-artifact@v3
with:
name: router-linux
path: target/x86_64-unknown-linux-gnu/release/router

lint:
name: Lint
runs-on: ubuntu-latest
needs: setup
timeout-minutes: 15
timeout-minutes: 25

env:
TURBO_TOKEN: ${{ secrets.TURBO_TOKEN }}
Expand Down
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -112,3 +112,6 @@ integration-tests/testkit/gql/
*.pem

/.husky/_/

# Rust
/target
Loading