Skip to content

Commit d09012c

Browse files
itg-davewurstbrot
authored andcommitted
docs(README): remove generated.yaml-references and update docker instructions
1 parent 89d1a65 commit d09012c

1 file changed

Lines changed: 84 additions & 34 deletions

File tree

README.md

Lines changed: 84 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -61,22 +61,67 @@ In case you would like to perform a DevSecOps assessment, the following tools ar
6161
## Container
6262

6363
1. Install [Docker](https://www.docker.com)
64-
2. Run `docker pull wurstbrot/dsomm:latest && docker run --rm -p 8080:8080 wurstbrot/dsomm:latest`
64+
2. Run
65+
```bash
66+
docker pull wurstbrot/dsomm:latest && docker run --rm -p 8080:8080 wurstbrot/dsomm:latest
67+
```
6568
3. Browse to <http://localhost:8080> (on macOS and Windows browse to <http://192.168.99.100:8080> if you are using docker-machine instead
6669
of the native docker installation)
6770

68-
For customized DSOMM, take a look at https://github.com/wurstbrot/DevSecOps-MaturityModel-custom.
71+
For customized DSOMM, take a look at https://github.com/wurstbrot/DevSecOps-MaturityModel-custom.
6972

70-
You can download your current state from the circular heatmap and mount it again via
73+
### Use the latest model data
7174

7275
```bash
73-
wget https://raw.githubusercontent.com/devsecopsmaturitymodel/DevSecOps-MaturityModel-data/main/src/assets/YAML/generated/generated.yaml # or go to /circular-heatmap and download edited yaml (bottom right)
74-
docker run -p 8080:8080 -v /tmp/generated.yaml:/srv/assets/YAML/generated/generated.yaml wurstbrot/dsomm:latest
76+
wget https://raw.githubusercontent.com/devsecopsmaturitymodel/DevSecOps-MaturityModel-data/refs/heads/main/generated/model.yaml
77+
docker run -p 8080:8080 -v "$PWD/model.yaml:/srv/assets/YAML/default/model.yaml" wurstbrot/dsomm:latest
7578
```
7679

77-
.
78-
79-
This approach also allows teams to perform self assessment with changes tracked in a repository.
80+
If the old model version is still referenced, clear your browser cache!
81+
82+
### Download and upload the current state
83+
84+
1. Go to `/circular-heatmap`.
85+
2. Download team progress and team evidence via buttons in the bottom-right.
86+
3. Mount the downloaded YAML-files in the container:
87+
```bash
88+
docker run -p 8080:8080 \
89+
-v "$PWD/team-evidence.yaml:/srv/assets/YAML/team-evidence.yaml" \
90+
-v "$PWD/team-progress.yaml:/srv/assets/YAML/team-progress.yaml" \
91+
wurstbrot/dsomm:latest
92+
```
93+
This approach also allows teams to perform self-assessment with changes tracked in a repository.
94+
95+
### Docker Compose
96+
97+
You can also track everything in a repository with a `docker compose` setup.
98+
99+
1. Ensure all files you want to track are present (`model.yaml`, `meta.yaml`, etc.).
100+
2. Create the compose.yaml. For example:
101+
```yaml
102+
# compose.yaml
103+
services:
104+
dsomm:
105+
image: wurstbrot/dsomm:latest
106+
container_name: dsomm
107+
ports:
108+
- "8080:8080"
109+
volumes:
110+
# uncomment the following line to add a modified meta.yaml (see: https://github.com/devsecopsmaturitymodel/DevSecOps-MaturityModel#teams-and-groups)
111+
# - ./meta.yaml:/srv/assets/YAML/meta.yaml
112+
- ./model.yaml:/srv/assets/YAML/default/model.yaml
113+
- ./team-evidence.yaml:/srv/assets/YAML/team-evidence.yaml
114+
- ./team-progress.yaml:/srv/assets/YAML/team-progress.yaml
115+
# add other files if needed
116+
```
117+
3. Start the service:
118+
```bash
119+
docker compose up -d
120+
```
121+
4. Stop the service and delete the container:
122+
```bash
123+
docker compose down
124+
```
80125

81126
## Amazon EC2 Instance
82127

@@ -96,34 +141,32 @@ service docker start
96141
docker run -d -p 80:8080 wurstbrot/dsomm:latest
97142
```
98143

99-
## Generating the `generated.yaml` File
100-
101-
The `generated.yaml` file is dynamically created during the build process. If you don’t see this file after setup, follow these steps to generate it:
144+
## Generating the `model.yaml` file
102145

103-
**1. Clone the Required Repository:**
104-
The `generated.yaml` file is built via the DevSecOps-MaturityModel-data repository. Make sure you have cloned and set it up correctly.
146+
The `model.yaml` file is dynamically created during the build process. If you don’t see this file after setup, follow these steps to generate it:
105147

106-
**2. Run the Build Command:**
107-
Navigate to the project directory and run the following command:
108-
- *Using npm:*
148+
1. **Clone the Required Repository:**
149+
The `model.yaml` file is built via the [DevSecOps-MaturityModel-data repository](https://github.com/devsecopsmaturitymodel/DevSecOps-MaturityModel-data). Make sure you have cloned and set it up correctly.
109150

110-
```sh
111-
npm run build
112-
````
113-
114-
- *Using yarn:*
115-
116-
```sh
117-
yarn build
118-
```
151+
2. **Run the Build Command:**
152+
Navigate to the project directory and run the following command:
153+
- Using `npm`:
154+
```bash
155+
npm run build
156+
```
157+
- Using `yarn`:
158+
```bash
159+
yarn build
160+
```
119161

120162
*If the file is missing, ensure all dependencies are installed and that you have the correct access to the `DevSecOps-MaturityModel-data` repository.*
121163

122164
## Activity Definitions
123165
The definition of the activities are in the [data-repository](https://github.com/devsecopsmaturitymodel/DevSecOps-MaturityModel-data).
124166

125167
## Teams and Groups
126-
To customize these teams, you can create your own [meta.yaml](src/assets/YAML/meta.yaml) file with your unique team definitions.
168+
169+
To customize these teams, you can create your own [meta.yaml](src/assets/YAML/meta.yaml) file with your unique team definitions.
127170

128171
Assessments within the framework can be based on either a team or a specific application, which can be referred to as the context. Depending on how you define the context or teams, you may want to group them together.
129172

@@ -132,21 +175,27 @@ Here are a couple of examples to illustrate this, in breakers the DSOMM word:
132175
- Multiple teams (teams) can belong to a larger department (group).
133176

134177
Feel free to create your own [meta.yaml](src/assets/YAML/meta.yaml) file to tailor the framework to your specific needs and mount it in your environment (e.g. kubernetes or docker).
178+
135179
Here is an example to start docker with customized meta.yaml:
136-
```
180+
181+
```bash
137182
# Customized meta.yaml
138183
cp src/assets/YAML/meta.yaml .
139-
docker run -v $(pwd)/meta.yaml:/srv/assets/YAML/meta.yaml -p 8080:8080 wurstbrot/dsomm
184+
docker run -v "$PWD/meta.yaml:/srv/assets/YAML/meta.yaml" -p 8080:8080 wurstbrot/dsomm
140185
141-
# Customized meta.yaml and generated.yaml
186+
# Customized meta.yaml and model.yaml
142187
cp src/assets/YAML/meta.yaml .
143-
cp $(pwd)/src/assets/YAML/generated/generated.yaml .
144-
docker run -v $(pwd)/meta.yaml:/srv/assets/YAML/meta.yaml -v $(pwd)/generated.yaml:/srv/assets/YAML/generated/generated.yaml -p 8080:8080 wurstbrot/dsomm
188+
cp "$PWD/src/assets/YAML/generated/model.yaml" .
189+
docker run \
190+
-v "$PWD/meta.yaml:/srv/assets/YAML/meta.yaml" \
191+
-v "$PWD/model.yaml:/srv/assets/YAML/default/model.yaml" \
192+
-p 8080:8080 wurstbrot/dsomm
145193
```
146194

147195
In the corresponding [dimension YAMLs](https://github.com/devsecopsmaturitymodel/DevSecOps-MaturityModel-data/tree/main/src/assets/YAML/default), use:
148-
```
149-
[...]
196+
197+
```yaml
198+
#[...]
150199
teamsImplemented:
151200
Default: false
152201
B: true
@@ -159,7 +208,8 @@ In the corresponding [dimension YAMLs](https://github.com/devsecopsmaturitymodel
159208
160209
_2025-04-01:_ All fixes of **critical** findings are deployed to production.
161210
```
162-
The `|` is yaml syntax to indicate that the evidence spans multiple lines. Markdown
211+
212+
The `|` is YAML syntax to indicate that the evidence spans multiple lines. Markdown
163213
syntax can be used. The evidence is currently visible on the activity from the Matrix page.
164214

165215
# Back link

0 commit comments

Comments
 (0)