Build docs in CI
This commit is contained in:
		
							
								
								
									
										85
									
								
								.github/workflows/doc.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										85
									
								
								.github/workflows/doc.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,85 @@
 | 
			
		||||
name: Docs
 | 
			
		||||
 | 
			
		||||
on:
 | 
			
		||||
  push:
 | 
			
		||||
    branches: [master]
 | 
			
		||||
 | 
			
		||||
env:
 | 
			
		||||
  BUILDER_THREADS: '2'
 | 
			
		||||
 | 
			
		||||
jobs:
 | 
			
		||||
  doc:
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
 | 
			
		||||
    # Since stm32 crates take SO LONG to build, we split them
 | 
			
		||||
    # into a separate job. This way it doesn't slow down updating
 | 
			
		||||
    # the rest.
 | 
			
		||||
    strategy:
 | 
			
		||||
      matrix:
 | 
			
		||||
        crates:
 | 
			
		||||
          - stm32
 | 
			
		||||
          - rest
 | 
			
		||||
 | 
			
		||||
    # This will ensure at most one doc build job is running at a time
 | 
			
		||||
    # (for stm32 and non-stm32 independently).
 | 
			
		||||
    # If another job is already running, the new job will wait.
 | 
			
		||||
    # If another job is already waiting, it'll be canceled.
 | 
			
		||||
    # This means some commits will be skipped, but that's fine because
 | 
			
		||||
    # we only care that the latest gets built.
 | 
			
		||||
    concurrency: doc-${{ matrix.crates }}
 | 
			
		||||
 | 
			
		||||
    steps:
 | 
			
		||||
      - uses: actions/checkout@v2
 | 
			
		||||
        with:
 | 
			
		||||
          submodules: true
 | 
			
		||||
      - name: Install Rust targets
 | 
			
		||||
        run: |
 | 
			
		||||
          rustup target add x86_64-unknown-linux-gnu
 | 
			
		||||
          rustup target add wasm32-unknown-unknown
 | 
			
		||||
          rustup target add thumbv6m-none-eabi
 | 
			
		||||
          rustup target add thumbv7m-none-eabi
 | 
			
		||||
          rustup target add thumbv7em-none-eabi
 | 
			
		||||
          rustup target add thumbv7em-none-eabihf
 | 
			
		||||
          rustup target add thumbv8m.base-none-eabi
 | 
			
		||||
          rustup target add thumbv8m.main-none-eabi
 | 
			
		||||
          rustup target add thumbv8m.main-none-eabihf
 | 
			
		||||
 | 
			
		||||
      - name: Install docserver
 | 
			
		||||
        run: |
 | 
			
		||||
          wget -q -O /usr/local/bin/builder "https://github.com/embassy-rs/docserver/releases/download/v0.3/builder"
 | 
			
		||||
          chmod +x /usr/local/bin/builder
 | 
			
		||||
 | 
			
		||||
      - name: build-stm32
 | 
			
		||||
        if: ${{ matrix.crates=='stm32' }}
 | 
			
		||||
        run: |
 | 
			
		||||
          mkdir crates
 | 
			
		||||
          builder ./embassy-stm32 crates/embassy-stm32/git.zup
 | 
			
		||||
          builder ./stm32-metapac crates/stm32-metapac/git.zup
 | 
			
		||||
 | 
			
		||||
      - name: build-rest
 | 
			
		||||
        if: ${{ matrix.crates=='rest' }}
 | 
			
		||||
        run: |
 | 
			
		||||
          mkdir crates
 | 
			
		||||
          builder ./embassy-boot/boot crates/embassy-boot/git.zup
 | 
			
		||||
          builder ./embassy-boot/nrf crates/embassy-boot-nrf/git.zup
 | 
			
		||||
          builder ./embassy-boot/stm32 crates/embassy-boot-stm32/git.zup
 | 
			
		||||
          builder ./embassy-cortex-m crates/embassy-cortex-m/git.zup
 | 
			
		||||
          builder ./embassy-embedded-hal crates/embassy-embedded-hal/git.zup
 | 
			
		||||
          builder ./embassy-executor crates/embassy-executor/git.zup
 | 
			
		||||
          builder ./embassy-futures crates/embassy-futures/git.zup
 | 
			
		||||
          builder ./embassy-lora crates/embassy-lora/git.zup
 | 
			
		||||
          builder ./embassy-net crates/embassy-net/git.zup
 | 
			
		||||
          builder ./embassy-nrf crates/embassy-nrf/git.zup
 | 
			
		||||
          builder ./embassy-rp crates/embassy-rp/git.zup
 | 
			
		||||
          builder ./embassy-sync crates/embassy-sync/git.zup
 | 
			
		||||
          builder ./embassy-usb crates/embassy-usb/git.zup
 | 
			
		||||
          builder ./embassy-usb-driver crates/embassy-usb-driver/git.zup
 | 
			
		||||
 | 
			
		||||
      - name: upload
 | 
			
		||||
        run: |
 | 
			
		||||
          mkdir -p ~/.kube
 | 
			
		||||
          echo "${{secrets.KUBECONFIG}}" > ~/.kube/config
 | 
			
		||||
          POD=$(kubectl -n embassy get po -l app=docserver -o jsonpath={.items[0].metadata.name})
 | 
			
		||||
          kubectl cp crates $POD:/data
 | 
			
		||||
 | 
			
		||||
          
 | 
			
		||||
							
								
								
									
										2
									
								
								.github/workflows/rust.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/workflows/rust.yml
									
									
									
									
										vendored
									
									
								
							@@ -11,7 +11,7 @@ env:
 | 
			
		||||
 | 
			
		||||
jobs:
 | 
			
		||||
  all:
 | 
			
		||||
    runs-on: ubuntu-20.04
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    needs: [build-nightly, build-stable, test]
 | 
			
		||||
    steps:
 | 
			
		||||
      - name: Done
 | 
			
		||||
 
 | 
			
		||||
@@ -8,7 +8,7 @@ edition = "2021"
 | 
			
		||||
src_base = "https://github.com/embassy-rs/embassy/blob/embassy-embedded-hal-v$VERSION/embassy-embedded-hal/src/"
 | 
			
		||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-embedded-hal/src/"
 | 
			
		||||
features = ["nightly", "std"]
 | 
			
		||||
target = "thumbv7em-none-eabi"
 | 
			
		||||
target = "x86_64-unknown-linux-gnu"
 | 
			
		||||
 | 
			
		||||
[features]
 | 
			
		||||
std = []
 | 
			
		||||
 
 | 
			
		||||
@@ -7,7 +7,7 @@ edition = "2021"
 | 
			
		||||
[package.metadata.embassy_docs]
 | 
			
		||||
src_base = "https://github.com/embassy-rs/embassy/blob/embassy-executor-v$VERSION/embassy-executor/src/"
 | 
			
		||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-executor/src/"
 | 
			
		||||
features = ["nightly", "defmt", "unstable-traits"]
 | 
			
		||||
features = ["nightly", "defmt"]
 | 
			
		||||
flavors = [
 | 
			
		||||
    { name = "std",                       target = "x86_64-unknown-linux-gnu",   features = ["std"] },
 | 
			
		||||
    { name = "wasm",                      target = "wasm32-unknown-unknown",     features = ["wasm"] },
 | 
			
		||||
 
 | 
			
		||||
@@ -6,7 +6,7 @@ edition = "2021"
 | 
			
		||||
[package.metadata.embassy_docs]
 | 
			
		||||
src_base = "https://github.com/embassy-rs/embassy/blob/embassy-usb-v$VERSION/embassy-usb/src/"
 | 
			
		||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-usb/src/"
 | 
			
		||||
features = ["defmt"]
 | 
			
		||||
features = ["defmt", "usbd-hid"]
 | 
			
		||||
target = "thumbv7em-none-eabi"
 | 
			
		||||
 | 
			
		||||
[features]
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user