Skip to content

Commit 65b1a9e

Browse files
author
Ron Sherfey
authored
Merge branch 'master' into dependabot/npm_and_yarn/src/examples/javascript/npm_and_yarn-2415dc3285
2 parents fbf8f96 + f938f3d commit 65b1a9e

File tree

161 files changed

+1164
-824
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

161 files changed

+1164
-824
lines changed

.github/CODEOWNERS

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,4 @@
22
# the repo. Unless a later match takes precedence,
33
# global-owner1 and global-owner2 will be requested for
44
# review when someone opens a pull request.
5-
* @GSA/fedramp-automation-admins
5+
* @GSA/fedramp-oscal-contributors

.github/ISSUE_TEMPLATE/3-action-item.yaml

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -22,19 +22,15 @@ body:
2222
- type: checkboxes
2323
attributes:
2424
label: This relates to ...
25-
description: Select all things this feedback relates to.
25+
description: Select all things this feedback relates to. (For changes to the FedRAMP OSCAL guidance document, please submit an issue [in the automate.fedramp.gov repository](https://github.com/GSA/automate.fedramp.gov/issues).)
2626
options:
27-
- label: the **FedRAMP OSCAL Registry**
2827
- label: the **FedRAMP OSCAL baselines**
29-
- label: the **Guide to OSCAL-based FedRAMP Content**
30-
- label: the **Guide to OSCAL-based FedRAMP System Security Plans (SSP)**
31-
- label: the **Guide to OSCAL-based FedRAMP Security Assessment Plans (SAP)**
32-
- label: the **Guide to OSCAL-based FedRAMP Security Assessment Results (SAR)**
33-
- label: the **Guide to OSCAL-based FedRAMP Plan of Action and Milestones (POA&M)**
34-
- label: the **FedRAMP SSP OSCAL Template** (JSON or XML Format)
35-
- label: the **FedRAMP SAP OSCAL Template** (JSON or XML Format)
36-
- label: the **FedRAMP SAR OSCAL Template** (JSON or XML Format)
37-
- label: the **FedRAMP POA&M OSCAL Template** (JSON or XML Format)
28+
- label: the **FedRAMP SSP OSCAL Example**
29+
- label: the **FedRAMP SAP OSCAL Example**
30+
- label: the **FedRAMP SAR OSCAL Example**
31+
- label: the **FedRAMP POA&M OSCAL Example**
32+
- label: the **FedRAMP OSCAL Validations**
33+
- label: the **Not sure**
3834
- type: textarea
3935
id: user-story
4036
attributes:
Lines changed: 114 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,114 @@
1+
name: Add, Change, or Remove a Constraint
2+
description: Define work to be performed specifically related to the adding, changing, or removing constraints.
3+
labels: ["enhancement"]
4+
body:
5+
- type: textarea
6+
id: user-story
7+
attributes:
8+
label: Constraint Task
9+
description: Identify the constraint
10+
placeholder: |
11+
Consistent with the parent/tracked-by issue, this constraint work focuses on ...
12+
validations:
13+
required: true
14+
15+
- type: textarea
16+
id: intended-outcome
17+
attributes:
18+
label: Intended Outcome
19+
description: Describe the reason for the constraint
20+
placeholder: |
21+
Ensure the {*content*} is ...
22+
validations:
23+
required: true
24+
25+
- type: markdown
26+
attributes:
27+
value: OSCAL Content Details
28+
29+
- type: dropdown
30+
attributes:
31+
label: Syntax Type
32+
options:
33+
- This is required core OSCAL syntax.
34+
- This is optional core OSCAL syntax.
35+
- This is a FedRAMP constraint in the FedRAMP-specific namespace.
36+
- This is a mix of required, optional, and/or extended syntax.
37+
- Not sure, can maintainers help me choose?
38+
validations:
39+
required: true
40+
41+
- type: dropdown
42+
attributes:
43+
label: Allowed Values
44+
options:
45+
- There are no relevant allowed values.
46+
- There are only NIST-defined allowed values.
47+
- FedRAMP allowed values must be defined or verified.
48+
- NIST-allowed values must be extended with FedRAMP allowed values.
49+
- Not sure, can maintainers help me choose?
50+
validations:
51+
required: true
52+
53+
- type: textarea
54+
id: metapath
55+
attributes:
56+
label: Metapath(s) to Content
57+
description: Provide the metapath/xpath to the OSCAL conent. This will be automatically formatted into code, so no need for backticks.
58+
render: xslt
59+
validations:
60+
required: true
61+
62+
63+
- type: textarea
64+
id: purpose
65+
attributes:
66+
label: Purpose of the OSCAL Content
67+
description: Describe how the OSCAL content is used by FedRAMP Reviewers.
68+
placeholder: |
69+
Provide information that explains why the constraint is important
70+
validations:
71+
required: false
72+
73+
- type: textarea
74+
id: dependencies
75+
attributes:
76+
label: Dependencies
77+
description: Describe any previous issues or related work that must be completed to start or complete this issue.
78+
placeholder: |
79+
Link to any previous issues or related work.
80+
validations:
81+
required: false
82+
83+
- type: textarea
84+
id: acceptance-criteria
85+
attributes:
86+
label: Acceptance Criteria
87+
description: Describe the artifacts and additional work that must be completed to resolve this issue.
88+
placeholder: |
89+
The items below are general acceptance criteria for all User Stories. Please describe anything else that must be completed for this issue to be considered resolved.
90+
value: |
91+
- [ ] All [OSCAL adoption content](http://automate.fedramp.gov/) affected by the change in this issue have been updated in accordance with the Documentation Standards.
92+
- [ ] Explanation is present and accurate
93+
- [ ] sample content is present and accurate
94+
- [ ] [Metapath](https://pages.nist.gov/metaschema/specification/syntax/metapath/) is present, accurate, and does not throw a syntax exception using `oscal-cli metaschema metapath eval -e "expression"`.
95+
- [ ] All constraints associated with the review task have been created
96+
- [ ] The appropriate example OSCAL file is updated with content that demonstrates the FedRAMP-compliant OSCAL presentation.
97+
- [ ] The constraint conforms to the FedRAMP Constraint Style Guide.
98+
- [ ] All automated and manual review items that identify non-conformance are addressed; **or** technical leads (David Waltermire; AJ Stein) have approved the PR and “override” the style guide requirement.
99+
- [ ] Known good test content is created for unit testing.
100+
- [ ] Known bad test content is created for unit testing.
101+
- [ ] Unit testing is configured to run both known good and known bad test content examples.
102+
- [ ] Passing and failing unit tests, and corresponding test vectors in the form of known valid and invalid OSCAL test files, are created or updated for each constraint.
103+
- [ ] A Pull Request (PR) is submitted that fully addresses the goals section of the User Story in the issue.
104+
- [ ] This issue is referenced in the PR.
105+
validations:
106+
required: true
107+
108+
- type: textarea
109+
attributes:
110+
label: Other information
111+
description: Provide any other relevant information.
112+
placeholder: |
113+
detailed explanation, suggestions how to fix, reference to related issues, links providing context, etc.
114+

.github/dependabot.yml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# To get started with Dependabot version updates, you'll need to specify which
2+
# package ecosystems to update and where the package manifests are located.
3+
# Please see the documentation for all configuration options:
4+
# https://docs.github.com/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file
5+
6+
version: 2
7+
updates:
8+
- package-ecosystem: "" # See documentation for possible values
9+
directory: "/" # Location of package manifests
10+
schedule:
11+
interval: "daily"

.github/workflows/docker-image.yml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
name: Docker Image CI
2+
3+
on:
4+
push:
5+
branches: [ "master" ]
6+
pull_request:
7+
branches: [ "master" ]
8+
9+
jobs:
10+
11+
build:
12+
13+
runs-on: ubuntu-latest
14+
15+
steps:
16+
- uses: actions/checkout@v4
17+
- name: Build the Docker image
18+
run: docker build . --file Dockerfile --tag my-image-name:$(date +%s)

.github/workflows/ibm.yml

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
# This workflow will build a docker container, publish it to IBM Container Registry, and deploy it to IKS when there is a push to the "master" branch.
2+
#
3+
# To configure this workflow:
4+
#
5+
# 1. Ensure that your repository contains a Dockerfile
6+
# 2. Setup secrets in your repository by going to settings: Create ICR_NAMESPACE and IBM_CLOUD_API_KEY
7+
# 3. Change the values for the IBM_CLOUD_REGION, REGISTRY_HOSTNAME, IMAGE_NAME, IKS_CLUSTER, DEPLOYMENT_NAME, and PORT
8+
9+
name: Build and Deploy to IKS
10+
11+
on:
12+
push:
13+
branches: [ "master" ]
14+
15+
# Environment variables available to all jobs and steps in this workflow
16+
env:
17+
GITHUB_SHA: ${{ github.sha }}
18+
IBM_CLOUD_API_KEY: ${{ secrets.IBM_CLOUD_API_KEY }}
19+
IBM_CLOUD_REGION: us-south
20+
ICR_NAMESPACE: ${{ secrets.ICR_NAMESPACE }}
21+
REGISTRY_HOSTNAME: us.icr.io
22+
IMAGE_NAME: iks-test
23+
IKS_CLUSTER: example-iks-cluster-name-or-id
24+
DEPLOYMENT_NAME: iks-test
25+
PORT: 5001
26+
27+
jobs:
28+
setup-build-publish-deploy:
29+
name: Setup, Build, Publish, and Deploy
30+
runs-on: ubuntu-latest
31+
environment: production
32+
steps:
33+
34+
- name: Checkout
35+
uses: actions/checkout@v4
36+
37+
# Download and Install IBM Cloud CLI
38+
- name: Install IBM Cloud CLI
39+
run: |
40+
curl -fsSL https://clis.cloud.ibm.com/install/linux | sh
41+
ibmcloud --version
42+
ibmcloud config --check-version=false
43+
ibmcloud plugin install -f kubernetes-service
44+
ibmcloud plugin install -f container-registry
45+
46+
# Authenticate with IBM Cloud CLI
47+
- name: Authenticate with IBM Cloud CLI
48+
run: |
49+
ibmcloud login --apikey "${IBM_CLOUD_API_KEY}" -r "${IBM_CLOUD_REGION}" -g default
50+
ibmcloud cr region-set "${IBM_CLOUD_REGION}"
51+
ibmcloud cr login
52+
53+
# Build the Docker image
54+
- name: Build with Docker
55+
run: |
56+
docker build -t "$REGISTRY_HOSTNAME"/"$ICR_NAMESPACE"/"$IMAGE_NAME":"$GITHUB_SHA" \
57+
--build-arg GITHUB_SHA="$GITHUB_SHA" \
58+
--build-arg GITHUB_REF="$GITHUB_REF" .
59+
60+
# Push the image to IBM Container Registry
61+
- name: Push the image to ICR
62+
run: |
63+
docker push $REGISTRY_HOSTNAME/$ICR_NAMESPACE/$IMAGE_NAME:$GITHUB_SHA
64+
65+
# Deploy the Docker image to the IKS cluster
66+
- name: Deploy to IKS
67+
run: |
68+
ibmcloud ks cluster config --cluster $IKS_CLUSTER
69+
kubectl config current-context
70+
kubectl create deployment $DEPLOYMENT_NAME --image=$REGISTRY_HOSTNAME/$ICR_NAMESPACE/$IMAGE_NAME:$GITHUB_SHA --dry-run -o yaml > deployment.yaml
71+
kubectl apply -f deployment.yaml
72+
kubectl rollout status deployment/$DEPLOYMENT_NAME
73+
kubectl create service loadbalancer $DEPLOYMENT_NAME --tcp=80:$PORT --dry-run -o yaml > service.yaml
74+
kubectl apply -f service.yaml
75+
kubectl get services -o wide

.github/workflows/npm-grunt.yml

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
name: NodeJS with Grunt
2+
3+
on:
4+
push:
5+
branches: [ "master" ]
6+
pull_request:
7+
branches: [ "master" ]
8+
9+
jobs:
10+
build:
11+
runs-on: ubuntu-latest
12+
13+
strategy:
14+
matrix:
15+
node-version: [14.x, 16.x, 18.x]
16+
17+
steps:
18+
- uses: actions/checkout@v4
19+
20+
- name: Use Node.js ${{ matrix.node-version }}
21+
uses: actions/setup-node@v3
22+
with:
23+
node-version: ${{ matrix.node-version }}
24+
25+
- name: Build
26+
run: |
27+
npm install
28+
grunt

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ src/validations/lib/**.jar
1313
src/validations/report
1414
src/validations/src/ssp.xsl
1515
src/validations/target
16-
utils
16+
utils/*.xsl
1717
/node_modules
1818

1919
# XSpec reports (from OxygenXML XSpec use)

azure-pipelines.yml

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
# Docker
2+
# Build a Docker image
3+
# https://docs.microsoft.com/azure/devops/pipelines/languages/docker
4+
5+
trigger:
6+
- master
7+
8+
resources:
9+
- repo: self
10+
11+
variables:
12+
tag: '$(Build.BuildId)'
13+
14+
stages:
15+
- stage: Build
16+
displayName: Build image
17+
jobs:
18+
- job: Build
19+
displayName: Build
20+
pool:
21+
vmImage: ubuntu-latest
22+
steps:
23+
- task: Docker@2
24+
displayName: Build an image
25+
inputs:
26+
command: build
27+
dockerfile: '$(Build.SourcesDirectory)/src/examples/java/Dockerfile'
28+
tags: |
29+
$(tag)

dist/content/rev4/README.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# REV4 CONTENTS DEPRECATED
2+
3+
FedRAMP has updated its documentation and templates to align with NIST Special Publication 800-53 Revision 5 (see https://www.fedramp.gov/rev5-transition/). All authorization and continuous monitoring activities going forward will be based on requirements in Revision 5, so FedRAMP Revision 4 baselines, resources, and templates are deprecated, as described in [ADR #007](/documents/adr/007-signal-unsupportent-content-in-github.md).
4+
5+
**NOTE - CONTENT IN THIS FOLDER OR SUBFOLDER IS DEPRECATED. SUBSEQUENT RELEASES WILL NOT INCLUDE THIS CONTENT.**

dist/content/rev4/baselines/json/FedRAMP_rev4_HIGH-baseline-resolved-profile_catalog-min.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
{
22
"catalog": {
3-
"uuid": "bb77868b-4a08-4677-8f3a-67d9b3c46d38",
3+
"uuid": "47c4e518-da88-4a9f-815e-cdc40c4c327f",
44
"metadata": {
55
"title": "FedRAMP Rev 4 High Baseline",
6-
"published": "2021-02-05T00:00:00.000-04:00",
7-
"last-modified": "2024-03-07T07:53:34.410816-05:00",
8-
"version": "fedramp1.1.1-oscal1.0.4",
6+
"published": "2024-09-24T02:24:00Z",
7+
"last-modified": "2024-09-23T22:00:18.266792-04:00",
8+
"version": "fedramp2.1.0-oscal1.0.4",
99
"oscal-version": "1.0.4",
1010
"links": [
1111
{

dist/content/rev4/baselines/json/FedRAMP_rev4_HIGH-baseline-resolved-profile_catalog.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
{
22
"catalog": {
3-
"uuid": "bb77868b-4a08-4677-8f3a-67d9b3c46d38",
3+
"uuid": "47c4e518-da88-4a9f-815e-cdc40c4c327f",
44
"metadata": {
55
"title": "FedRAMP Rev 4 High Baseline",
6-
"published": "2021-02-05T00:00:00.000-04:00",
7-
"last-modified": "2024-03-07T07:53:34.410816-05:00",
8-
"version": "fedramp1.1.1-oscal1.0.4",
6+
"published": "2024-09-24T02:24:00Z",
7+
"last-modified": "2024-09-23T22:00:18.266792-04:00",
8+
"version": "fedramp2.1.0-oscal1.0.4",
99
"oscal-version": "1.0.4",
1010
"links": [
1111
{

dist/content/rev4/baselines/json/FedRAMP_rev4_HIGH-baseline_profile-min.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@
33
"uuid": "a96528f4-ced6-4711-b394-509b7042dfa5",
44
"metadata": {
55
"title": "FedRAMP Rev 4 High Baseline",
6-
"published": "2021-02-05T00:00:00.000-04:00",
7-
"last-modified": "2023-06-23T00:00:00.000-04:00",
8-
"version": "fedramp1.1.1-oscal1.0.4",
6+
"published": "2024-09-24T02:24:00Z",
7+
"last-modified": "2024-09-24T02:24:00Z",
8+
"version": "fedramp2.1.0-oscal1.0.4",
99
"oscal-version": "1.0.4",
1010
"roles": [
1111
{

dist/content/rev4/baselines/json/FedRAMP_rev4_HIGH-baseline_profile.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@
33
"uuid": "a96528f4-ced6-4711-b394-509b7042dfa5",
44
"metadata": {
55
"title": "FedRAMP Rev 4 High Baseline",
6-
"published": "2021-02-05T00:00:00.000-04:00",
7-
"last-modified": "2023-06-23T00:00:00.000-04:00",
8-
"version": "fedramp1.1.1-oscal1.0.4",
6+
"published": "2024-09-24T02:24:00Z",
7+
"last-modified": "2024-09-24T02:24:00Z",
8+
"version": "fedramp2.1.0-oscal1.0.4",
99
"oscal-version": "1.0.4",
1010
"roles": [
1111
{

0 commit comments

Comments
 (0)