---
source: crates/shipper-cli/tests/e2e_expanded.rs
expression: normalize_output(&stdout)
---
# GitHub Actions workflow snippet for Shipper
# Add these steps to your workflow file
# Restore Shipper State (cache for faster restores)
- name: Restore Shipper State
uses: actions/cache@v3
with:
path: <STATE_DIR>/
key: shipper-${{ github.sha }}
restore-keys: |
shipper-
# Restore Shipper State (artifact for resumability)
- name: Restore Shipper State Artifact
uses: actions/download-artifact@v4
with:
name: shipper-state
path: <STATE_DIR>/
continue-on-error: true
# Run shipper publish (will resume if state exists)
- name: Publish Crates
run: shipper publish --quiet
env:
CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}
# Save Shipper State (even if publish fails)
- name: Save Shipper State
if: always()
uses: actions/upload-artifact@v3
with:
name: shipper-state
path: <STATE_DIR>/