Skip to content
Merged
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
8 changes: 7 additions & 1 deletion .github/workflows/checks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,17 @@ jobs:
url_to_json: 'https://raw.githubusercontent.com/DSACMS/repo-scaffolder/main/tier3/%7B%7Bcookiecutter.project_slug%7D%7D/repolinter.json'

repolinter-checks:
if: github.event.pull_request.head.repo.full_name == github.repository
name: Tier 3 Checks
needs: resolve-repolinter-json
runs-on: ubuntu-latest
permissions:
contents: read
issues: write
env:
RAW_JSON: ${{ needs.resolve-repolinter-json.outputs.raw-json}}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

steps:
- uses: actions/checkout@v4
- run: echo $RAW_JSON > repolinter.json
Expand All @@ -39,7 +45,7 @@ jobs:
# non-intrusive notification.
#
# Default: "exit-code"
output_type: 'issue'
output_type: 'exit-code'

# The title to use for the issue created by repolinter-action. This title
# should indicate the purpose of the issue, as well as that it was created by
Expand Down
125 changes: 125 additions & 0 deletions .github/workflows/pull-request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,125 @@
name: pull request

on: [pull_request]

permissions:
contents: write
pull-requests: write

jobs:
build:
name: build
runs-on: ubuntu-latest

outputs:
cache_key: ${{ steps.cache_key.outputs.cache_key }}

steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- id: cache_key
run: echo "cache_key=${{ hashFiles('**/**') }}-v1" >> "$GITHUB_OUTPUT"
- uses: actions/cache@v3
id: cache
with:
path: ./app
key: ${{ steps.cache_key.outputs.cache_key }}
- if: steps.cache.outputs.cache-hit != true
uses: actions/setup-node@v3
with:
node-version: 18
- if: steps.cache.outputs.cache-hit != true
run: npm install
working-directory: ./app
- if: steps.cache.outputs.cache-hit != true
env:
ELEVENTY_ENV: production
run: npm run build
working-directory: ./app

pa11y-scan:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- name: Use Node
uses: actions/setup-node@v3
with:
node-version: '18.x'
- name: Install node dependencies
run: npm install
working-directory: ./app
- name: Build site
run: npm run build
working-directory: ./app
- name: Start server in background
run: npx serve dist -l 8080 &
working-directory: ./app
- name: Wait for server
run: sleep 5
- name: Accessibility scan
run: npm run test:pa11y-ci
working-directory: ./app

validate_html:
needs: [build]
name: validate html
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- uses: actions/cache/restore@v3
with:
key: ${{ needs.build.outputs.cache_key }}
path: ./app
- uses: actions/setup-node@v3
with:
node-version: 18
- run: npm run test:html-validation
working-directory: ./app


check_links:
needs: [build]
name: Check all links
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- uses: actions/cache/restore@v3
with:
key: ${{ needs.build.outputs.cache_key }}
path: ./app
- uses: actions/setup-node@v3
with:
node-version: 18
- name: Start server in background
run: npx serve dist -l 8080 &
working-directory: ./app
- name: Wait for server
run: sleep 5
- name: Test all links
run: npm run test:links
working-directory: ./app

lint:
name: Run linter
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- name: Use Node
uses: actions/setup-node@v3
with:
node-version: 18
- name: Install node dependencies
run: npm install
working-directory: ./app
- name: Run eslint
run: npm run lint
working-directory: ./app
Empty file added COMMUNITY.md
Empty file.
13 changes: 13 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -161,11 +161,24 @@ request will be closed.
The changes in the pull request will be collapsed into a single commit, but the
authorship metadata will be preserved.

## Shipping Releases
<!-- [TODO] -->

## Documentation

We also welcome improvements to the project [documentation](docs/Main.md) or to the existing
docs. Please file an [issue](https://github.com/DSACMS/metrics/issues/new).

<!--
## Governance
Information about how the {{ cookiecutter.project_name }} community is governed may be found in [GOVERNANCE.md](GOVERNANCE.md).
-->

<!--
## Glossary
Information about terminology and acronyms used in this documentation may be found in [GLOSSARY.md](GLOSSARY.md).
-->

## Policies

### Open Source Policy
Expand Down
8 changes: 8 additions & 0 deletions GOVERNANCE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# Governance

# Governance

<!-- TODO: Starting at Tier 3 GOVERNANCE.md has basic language about early community governance, how the project make decisions, and how contributors are elevated through the leadership process if any (e.g. joining teams, getting maintainer status, etc...)
-->

This project is governed by our [Community Guidelines](COMMUNITY.md) and [Code of Conduct](CODE_OF_CONDUCT.md).
9 changes: 9 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,21 @@
## About the Project
The CMS Repository Metrics Website shows an overview of software development activity across open source projects within a specified organization. This webpage is meant to be used by developers and program managers interested in repository health within CMS open source projects.

### Project Mission
<!-- [TODO] -->

### Project Vision
A metrics website that automatically pulls GitHub Repository data each week to produce numerical statistics and visualizations to aid developers and PMs in monitoring project health.

## Core Team
An up-to-date list of core team members can be found in [MAINTAINERS.md](MAINTAINERS.md).

### Team Mission
<!-- [TODO] -->

### Agency Mission
<!-- [TODO] -->

## Documentation Index
- [CONTRIBUTING.md](./CONTRIBUTING.md)
- [MAINTAINERS.md](./MAINTAINERS.md)
Expand Down
7 changes: 7 additions & 0 deletions app/.htmlvalidate.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"extends": ["html-validate:recommended"],
"rules": {
"void-style": "off",
"no-trailing-whitespace": "off"
}
}
15 changes: 15 additions & 0 deletions app/.pa11yci.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
module.exports = {
defaults: {
concurrency: 1,
standard: "WCAG2AA",
runners: ["htmlcs"],
// ignore iframes because we don't use them and DAP inserts an iframe
// that causes intermittent pa11y errors
hideElements:
"iframe, div[style*='display: none;'], [data-pa11y-ignore], a[href*='/TODO/']",
chromeLaunchConfig: {
executablePath: "/usr/bin/google-chrome",
},
},
urls: ["http://localhost:8080"],
}
Loading
Loading