Skip to content

Commit 21441f7

Browse files
authored
Create generator-generic-ossf-slsa3-publish.yml
Saya tidak dapat mencari fail bernama `generic-ossf-slsa3-publish.yml` dalam repositori anda. Fail tersebut mungkin tidak wujud, atau terdapat isu dengan pencarian. Adakah anda ingin saya membantu mencipta fail ini atau memberikan panduan bagaimana untuk membuatnya? Sila kongsikan maklumat lanjut!
1 parent 2c4e980 commit 21441f7

File tree

1 file changed

+83
-0
lines changed

1 file changed

+83
-0
lines changed
Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,83 @@
1+
# ThAdakah anda merujuk kepada **SLSA (Supply-chain Levels for Software Artifacts)** peringkat 3 dan cara melaksanakannya dalam projek anda? Berikut adalah beberapa maklumat dan langkah yang mungkin berkaitan:
2+
3+
### Apa itu SLSA 3?
4+
**SLSA 3** adalah tahap ketiga dalam rangka kerja SLSA yang menumpukan pada membangun dan mengedarkan perisian dengan lebih selamat. Ia memerlukan:
5+
1. **Builds yang Diperakui**: Semua binaan perisian mesti disahkan oleh sistem binaan yang dipercayai.
6+
2. **Proses Automasi Penuh**: Tiada campur tangan manual dalam proses binaan atau pelepasan.
7+
3. **Metadata yang Terperinci**: Metadata binaan mesti dihasilkan secara automatik dan termasuk maklumat penting seperti siapa yang memulakan binaan.
8+
9+
### Penggunaan dalam Projek GitHub
10+
Untuk melaksanakan SLSA 3 dalam projek anda, anda boleh menggunakan sistem CI/CD seperti **GitHub Actions**. Biasanya, fail konfigurasi seperti `generator-generic-ossf-slsa3-publish.yml` digunakan untuk ini.
11+
12+
### Jika Anda Merujuk Kepada Fail `generator-generic-ossf-slsa3-publish.yml`
13+
Fail ini adalah sebahagian daripada automasi workflow untuk mencapai tahap SLSA 3. Namun, saya tidak dapat mengakses fail ini dalam repositori anda. Jika anda ingin saya bantu mengedit atau membuat fail ini dari awal, sila berikan maklumat berikut:
14+
1. **Komponen Projek**: Bahasa pengaturcaraan dan sistem binaan digunakan (contoh: Node.js, Python, Java).
15+
2. **Alat CI/CD**: Apakah alatan atau platform yang sedang digunakan (contoh: GitHub Actions, Jenkins)?
16+
3. **Keperluan Lanjut**: Adakah anda ingin menerbitkan pakej ke repositori tertentu seperti Docker Hub atau PyPI?
17+
18+
Saya sedia membantu anda melanjutkan dari sini! 😊is workflow uses actions that are not certified by GitHub.
19+
# They are provided by a third-party and are governed by
20+
# separate terms of service, privacy policy, and support
21+
# documentation.
22+
23+
# This workflow lets you generate SLSA provenance file for your project.
24+
# The generation satisfies level 3 for the provenance requirements - see https://slsa.dev/spec/v0.1/requirements
25+
# The project is an initiative of the OpenSSF (openssf.org) and is developed at
26+
# https://github.com/slsa-framework/slsa-github-generator.
27+
# The provenance file can be verified using https://github.com/slsa-framework/slsa-verifier.
28+
# For more information about SLSA and how it improves the supply-chain, visit slsa.dev.
29+
30+
name: SLSA generic generator
31+
on:
32+
workflow_dispatch:
33+
release:
34+
types: [created]
35+
36+
jobs:
37+
build:
38+
runs-on: ubuntu-latest
39+
outputs:
40+
digests: ${{ steps.hash.outputs.digests }}
41+
42+
steps:
43+
- uses: actions/checkout@v4
44+
45+
# ========================================================
46+
#
47+
# Step 1: Build your artifacts.
48+
#
49+
# ========================================================
50+
- name: Build artifacts
51+
run: |
52+
# These are some amazing artifacts.
53+
echo "artifact1" > artifact1
54+
echo "artifact2" > artifact2
55+
56+
# ========================================================
57+
#
58+
# Step 2: Add a step to generate the provenance subjects
59+
# as shown below. Update the sha256 sum arguments
60+
# to include all binaries that you generate
61+
# provenance for.
62+
#
63+
# ========================================================
64+
- name: Generate subject for provenance
65+
id: hash
66+
run: |
67+
set -euo pipefail
68+
69+
# List the artifacts the provenance will refer to.
70+
files=$(ls artifact*)
71+
# Generate the subjects (base64 encoded).
72+
echo "hashes=$(sha256sum $files | base64 -w0)" >> "${GITHUB_OUTPUT}"
73+
74+
provenance:
75+
needs: [build]
76+
permissions:
77+
actions: read # To read the workflow path.
78+
id-token: write # To sign the provenance.
79+
contents: write # To add assets to a release.
80+
uses: slsa-framework/slsa-github-generator/.github/workflows/[email protected]
81+
with:
82+
base64-subjects: "${{ needs.build.outputs.digests }}"
83+
upload-assets: true # Optional: Upload to a new release

0 commit comments

Comments
 (0)