Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
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
75 changes: 75 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
# Standard, org-uniform Dependabot configuration template.
#
# Each repo should drop this file at .github/dependabot.yml and uncomment the
# ecosystem entries that apply. Keep weekly cadence so review backlogs stay
# manageable. Auto-assigning all PRs to a single triage owner (@srpatcha)
# prevents the "ten people CC'd, no one acts" failure mode.
#
# Reference template lives at embeddedos-org/.github/.github/dependabot-template.yml.

version: 2
updates:
# GitHub Actions — every repo should keep this enabled.
- package-ecosystem: github-actions
directory: /
schedule:
interval: weekly
day: monday
open-pull-requests-limit: 5
assignees:
- srpatcha
labels:
- dependencies
- github-actions

# Python — uncomment in repos with pyproject.toml or requirements.txt.
# - package-ecosystem: pip
# directory: /
# schedule:
# interval: weekly
# day: monday
# open-pull-requests-limit: 5
# assignees:
# - srpatcha
# labels:
# - dependencies
# - python

# Node.js — uncomment in repos with package.json.
# - package-ecosystem: npm
# directory: /
# schedule:
# interval: weekly
# day: monday
# open-pull-requests-limit: 5
# assignees:
# - srpatcha
# labels:
# - dependencies
# - npm

# Go — uncomment in repos with go.mod.
# - package-ecosystem: gomod
# directory: /
# schedule:
# interval: weekly
# day: monday
# open-pull-requests-limit: 5
# assignees:
# - srpatcha
# labels:
# - dependencies
# - go

# Docker — uncomment in repos with Dockerfile.
# - package-ecosystem: docker
# directory: /
# schedule:
# interval: weekly
# day: monday
# open-pull-requests-limit: 3
# assignees:
# - srpatcha
# labels:
# - dependencies
# - docker
39 changes: 39 additions & 0 deletions .github/workflows/health-check.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
name: health-check

on:
schedule:
# Weekly — Mondays 06:00 UTC
- cron: '0 6 * * 1'
workflow_dispatch: {}

permissions:
contents: read

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: false

jobs:
linkinator:
name: Crawl live sites for broken links
runs-on: ubuntu-latest
steps:
- name: Setup Node
uses: actions/setup-node@v4
with:
node-version: '20'

- name: Crawl developer portal
run: |
npx --yes linkinator@6 https://embeddedos-org.github.io \
--recurse \
--skip 'github.com|googletagmanager|fonts.googleapis' \
--timeout 10000 \
--retry \
--retry-errors-count 2

- name: Crawl org profile
run: |
npx --yes linkinator@6 https://github.com/embeddedos-org \
--skip 'login|signup|sponsors' \
--timeout 10000
42 changes: 42 additions & 0 deletions .github/workflows/lint-readme.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
name: lint-readme

on:
push:
paths:
- '**/*.md'
pull_request:
paths:
- '**/*.md'

permissions:
contents: read

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: false

jobs:
markdownlint:
name: markdownlint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- uses: actions/setup-node@v4
with:
node-version: '20'

- name: Run markdownlint
run: npx --yes markdownlint-cli '**/*.md' --ignore node_modules

lychee:
name: lychee link check (offline)
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: lychee --offline
uses: lycheeverse/lychee-action@v2
with:
args: --offline --no-progress --verbose './**/*.md'
fail: true
Loading
Loading