Skip to content

Commit 9735199

Browse files
authored
๐Ÿ“–doc tweaks (slsa-framework#199)
* ๐Ÿ“– add missing image used in SPECIFICATION.md This was omitted when docs were copied from the slsa-github-generator-go repository. Signed-off-by: Joshua Lock <[email protected]> * ๐Ÿ“– move verification steps to top-level README * Move verification steps to top-level README, these are not ecosystem specific * Make 'Provenance format' a child of 'Technical design' * Make 'Generation of provenance' a second-level section Signed-off-by: Joshua Lock <[email protected]> * ๐Ÿ“– update README to clarify which requirements are met Emphasise that the generator and builders can be used to meet the Build and Provenance requirements only, Source requirements must be met with other tools. Signed-off-by: Joshua Lock <[email protected]>
1 parent 710d375 commit 9735199

File tree

3 files changed

+375
-31
lines changed

3 files changed

+375
-31
lines changed

โ€ŽREADME.md

+32-9
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,53 @@
11
# Generation of SLSA3+ provenance for native GitHub projects
22

3-
This repository contains the implementation for generating non-forgeable [SLSA provenance](https://slsa.dev/) that meets the requirement for the [SLSA level 3 and above](https://slsa.dev/spec/v0.1/levels). The SLSA generation makes use of a [Github Actions reusable workflow](https://docs.github.com/en/actions/using-workflows/reusing-workflows).
3+
This repository contains tools for generating non-forgeable [SLSA provenance](https://slsa.dev/) on GitHub that meets the [build](https://slsa.dev/spec/v0.1/requirements#build-requirements) and [provenance](https://slsa.dev/spec/v0.1/requirements#provenance-requirements) requirements for [SLSA level 3 and above](https://slsa.dev/spec/v0.1/levels).
44

5-
This repository contains the code, examples and technical design for the blog post on [Non forgeable SLSA provenance using GitHub workflows](https://security.googleblog.com/2022/04/improving-software-supply-chain.html).
5+
Use of the provided [Github Actions reusable workflow](https://docs.github.com/en/actions/using-workflows/reusing-workflows)s only is not sufficient to meet all of the requirements at SLSA level 3. Specifically, the [source requirements](https://slsa.dev/spec/v0.1/requirements#source-requirements) are not covered by these workflows and must be handled explicitly to meet all requirements at SLSA level 3+.
6+
7+
This repository contains the code, examples and technical design for system described in the blog post on [Non forgeable SLSA provenance using GitHub workflows](https://security.googleblog.com/2022/04/improving-software-supply-chain.html).
68

79
---
810

9-
- [Golang projects](#golang-projects)
10-
- [Other projects](#other-projects)
11-
- [Provenance format](#provenance-format)
11+
- [Generation of provenance](#generation-of-provenance)
12+
- [Golang projects](#golang-projects)
13+
- [Other projects](#other-projects)
14+
- [Verification of provenance](#verification-of-provenance)
15+
- [Installation](#installation)
16+
- [Inputs](#inputs)
17+
- [Command line examples](#command-line-examples)
1218
- [Technical design](#technical-design)
1319
- [Blog post](#blog-post)
1420
- [Specifications](#specifications)
21+
- [Provenance format](#provenance-format)
1522

1623
---
1724

18-
## Golang projects
25+
## Generation of provenance
26+
27+
### Golang projects
1928

2029
To generate SLSA provenance for your Golang project, follow [internal/builders/go/README.md](internal/builders/go/README.md).
2130

22-
## Other projects
31+
### Other projects
2332

2433
To generate SLSA provenance for other programming languages, follow [internal/builders/generic/README.md](internal/builders/generic/README.md).
2534
This is a pre-release only and we will have the official release in July 2022.
2635

27-
## Provenance format
36+
## Verification of provenance
2837

29-
The format of the provenance is available in [PROVENANCE_FORMAT.md](./PROVENANCE_FORMAT.md).
38+
To verify the provenance, use the [github.com/slsa-framework/slsa-verifier](https://github.com/slsa-framework/slsa-verifier) project.
39+
40+
### Installation
41+
42+
To install the verifier, see [slsa-framework/slsa-verifier#installation](https://github.com/slsa-framework/slsa-verifier#installation).
43+
44+
### Inputs
45+
46+
The inputs of the verifier are described in [slsa-framework/slsa-verifier#available-options](https://github.com/slsa-framework/slsa-verifier#available-options).
47+
48+
### Command line examples
49+
50+
A command line example is provided in [slsa-framework/slsa-verifier#example](https://github.com/slsa-framework/slsa-verifier#example).
3051

3152
## Technical design
3253

@@ -38,5 +59,7 @@ Find our blog post series [here](https://security.googleblog.com/2022/04/improvi
3859

3960
For a more in-depth technical dive, read the [SPECIFICATIONS.md](./SPECIFICATIONS.md).
4061

62+
### Provenance format
4163

64+
The format of the provenance is available in [PROVENANCE_FORMAT.md](./PROVENANCE_FORMAT.md).
4265

โ€Žimages/cert.svg

+343
Loading

โ€Žinternal/builders/go/README.md

-22
Original file line numberDiff line numberDiff line change
@@ -14,12 +14,6 @@ This document explains how to use the builder for Golang projects.
1414
- [Example provenance](#example-provenance)
1515
- [BuildConfig format](#buildconfig-format)
1616

17-
[Verification of provenance](#verification-of-provenance)
18-
19-
- [Installation](#installation)
20-
- [Inputs](#inputs)
21-
- [Command line examples](#command-line-examples)
22-
2317
---
2418

2519
## Generation
@@ -277,19 +271,3 @@ The `BuildConfig` contains the following fields:
277271
```json
278272
"workingDir": "/home/runner/work/ianlewis/actions-test"
279273
```
280-
281-
## Verification of provenance
282-
283-
To verify the provenance, use the [github.com/slsa-framework/slsa-verifier](https://github.com/slsa-framework/slsa-verifier) project.
284-
285-
### Installation
286-
287-
To install the verifier, see [slsa-framework/slsa-verifier#installation](https://github.com/slsa-framework/slsa-verifier#installation).
288-
289-
### Inputs
290-
291-
The inputs of the verifier are described in [slsa-framework/slsa-verifier#available-options](https://github.com/slsa-framework/slsa-verifier#available-options).
292-
293-
### Command line examples
294-
295-
A command line example is provided in [slsa-framework/slsa-verifier#example](https://github.com/slsa-framework/slsa-verifier#example).

0 commit comments

Comments
ย (0)