Provide examples for continous integration
Closed this issue · 4 comments
I tried to get structurizr/cli working in an gitlab-ci for quite some time now.
This is the best I could do, and it is not great (because it redoes a lot of the work that you already do in the Dockerfile, but I just couldn't get that one to work):
structurizr_export:
image: eclipse-temurin:17.0.5_8-jre-jammy
stage: generate_views
before_script:
- wget https://static.structurizr.com/download/structurizr-cli.zip
- apt update && apt install unzip
- unzip structurizr-cli.zip
script:
- bash structurizr.sh export --workspace my_workspace_file.dsl --format mermaid
- ls -la
Got it to work, the trick was to overwrite the entrypoint. This is what I use now:
generate_views:
stage: generate_views
image:
name: structurizr/cli
entrypoint: [""]
script:
- /usr/local/structurizr-cli/structurizr.sh export --workspace workspace.dsl --format mermaid
- ls -lah
artifacts:
paths:
- "*.mmd"
expire_in: 1 day
I still think it would be valuable to provide examples for gitlab and github in the documentation.
My personal usecase is solved though.
I still think it would be valuable to provide examples for gitlab and github in the documentation.
Glad you managed to resolve your issue. I don't use GitHub/GitLab for CI, but you're welcome to provide a PR with documentation.
Gladly. I even got a cool PR number: #100
Perhaps this is the right place to say thank you for your awesome work, both on C4 and on structurizr.
I am a fan of diagramming tools, but structurizr's syntax is so cool and clear that I just can't go back.
I am looking forward to seeing which directions the project will go.