This repository was archived by the owner on Apr 15, 2026. It is now read-only.
Repository navigation
Upstream Check #114
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Upstream Check | |
| on: | |
| schedule: | |
| - cron: '0 6 * * *' # Daily at 6am UTC | |
| push: | |
| branches: [main] | |
| workflow_dispatch: | |
| permissions: | |
| contents: read | |
| jobs: | |
| check-upstream: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Check consolidated FedRAMP JSON | |
| run: | | |
| BASE_URL="https://raw.githubusercontent.com/FedRAMP/docs/main" | |
| FILE="FRMR.documentation.json" | |
| STATUS=$(curl -s -o /tmp/fedramp-doc.json -w "%{http_code}" "$BASE_URL/$FILE") | |
| if [ "$STATUS" != "200" ]; then | |
| echo "::error::$FILE returned HTTP $STATUS" | |
| exit 1 | |
| fi | |
| echo "✓ $FILE (HTTP $STATUS)" | |
| # Validate JSON structure | |
| if ! python3 -m json.tool /tmp/fedramp-doc.json > /dev/null 2>&1; then | |
| echo "::error::$FILE is not valid JSON" | |
| exit 1 | |
| fi | |
| echo "✓ JSON is valid" | |
| # Check expected top-level keys | |
| KEYS=$(python3 -c "import json; d=json.load(open('/tmp/fedramp-doc.json')); print(' '.join(sorted(d.keys())))") | |
| echo " Top-level keys: $KEYS" | |
| for KEY in FRD FRR info; do | |
| if ! echo "$KEYS" | grep -qw "$KEY"; then | |
| echo "::error::Expected top-level key '$KEY' not found in $FILE" | |
| exit 1 | |
| fi | |
| done | |
| echo "✓ Expected top-level keys present" | |
| echo "" | |
| echo "FRMR.documentation.json is accessible and valid." |