forked from sustainable-computing-io/kepler
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathrelease.uml
More file actions
50 lines (39 loc) · 1.23 KB
/
release.uml
File metadata and controls
50 lines (39 loc) · 1.23 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
@startuml Release Workflow Sequence
' NOTE: Render using http://sujoyu.github.io/plantuml-previewer or any PlantUML tool
title Release Workflow for kepler (vX.Y.Z)
skinparam sequenceMessageAlign center
skinparam responseMessageBelowArrow true
skinparam maxMessageSize 150
skinparam style strictuml
actor "Developer" as Dev
participant "Repo" as SR
box "GitHub Actions" #LightBlue
participant "Workflow Runner" as Runner
end box
participant "Quay.io" as Registry
== Trigger ==
Dev -> SR: Push tag matching v*.*.*.
SR -> Runner: Trigger release workflow
== Setup & Build ==
group Environment Setup
Runner -> Runner: Checkout source code
Runner -> Runner: Setup Go environment
Runner -> Registry: Authenticate with registry
note right: Using docker/login-action
end
group Build Process
Runner -> Runner: Install dependencies
note right: make deps
Runner -> Runner: Build container image
note right: make image
end
== Release Creation ==
Runner -> Runner: Extract version from tag
Runner -> SR: Create GitHub Release
note right: Using softprops/action-gh-release\nwith extracted version
== Publish ==
Runner -> Registry: Push container image
note right: make push
== Complete ==
Runner --> SR: Workflow complete
@enduml