Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use the refactored runner manager #351

Merged
merged 290 commits into from
Sep 5, 2024
Merged
Show file tree
Hide file tree
Changes from 250 commits
Commits
Show all changes
290 commits
Select commit Hold shift + click to select a range
f32b4b1
Patch runner log path in tests
yhaliaw Aug 6, 2024
6017b39
Add missing fixture
yhaliaw Aug 6, 2024
02c6f63
Fix the scope of fixture
yhaliaw Aug 6, 2024
f4e819c
Fix tmp_path scope issue
yhaliaw Aug 6, 2024
8847325
Fix monkeypatch fixture scope issue
yhaliaw Aug 6, 2024
d2499c9
Add patch of metric log path
yhaliaw Aug 6, 2024
c0c8319
Fix return type of create_runners
yhaliaw Aug 6, 2024
20d54b4
Add health check test
yhaliaw Aug 6, 2024
dd0a733
Fix arg naming
yhaliaw Aug 6, 2024
e12169f
Add debug statement
yhaliaw Aug 6, 2024
7e09cc4
Add more debug statement
yhaliaw Aug 6, 2024
2b0c95f
Move debug statement
yhaliaw Aug 6, 2024
9d4e6f7
Merge tests
yhaliaw Aug 6, 2024
d349ea8
Handle openstack errors with delete runner
yhaliaw Aug 6, 2024
4b3c497
Fix delete server
yhaliaw Aug 6, 2024
1cf3190
Fix test variable reference
yhaliaw Aug 6, 2024
fe0a6bc
Fix OpenstackInstance creation
yhaliaw Aug 6, 2024
fa330a3
Add some docstrings
yhaliaw Aug 6, 2024
8a4b5d7
Fix args issues with RunnerInstance
yhaliaw Aug 6, 2024
f11705e
Add more docs
yhaliaw Aug 6, 2024
da2929f
Fix GithubRunnerState construction
yhaliaw Aug 6, 2024
b0eeb17
Fix instance-id parsing from full name
yhaliaw Aug 6, 2024
b38cd11
Add delete idle runner test.
yhaliaw Aug 6, 2024
f37b7a8
Add busy flush to test
yhaliaw Aug 6, 2024
207913f
Spawn a manual test env
yhaliaw Aug 6, 2024
7af0589
Disable spawning on manual test env
yhaliaw Aug 6, 2024
1c8ea0d
Remove useless class
yhaliaw Aug 6, 2024
ce05cf5
Fix runner deletion
yhaliaw Aug 6, 2024
ea1a726
Fix import error
yhaliaw Aug 6, 2024
05a9016
Add more docs
yhaliaw Aug 6, 2024
752aa0e
Fix get no-existing openstack server
yhaliaw Aug 6, 2024
280480b
Add debug statement
yhaliaw Aug 6, 2024
7df1802
Fix variable name and function name mixup
yhaliaw Aug 6, 2024
d1ecfb6
Fix id variable name, function name mixup
yhaliaw Aug 6, 2024
1ab8db6
Add debug statement
yhaliaw Aug 6, 2024
78fdac2
Move debug
yhaliaw Aug 6, 2024
fd628e6
Add busy runner test
yhaliaw Aug 6, 2024
e688b6c
Add debug statement.
yhaliaw Aug 6, 2024
4296e04
Disable some test
yhaliaw Aug 6, 2024
7d2bc00
Disable some test
yhaliaw Aug 6, 2024
d90f70b
Fix runner label in workflow
yhaliaw Aug 6, 2024
a868a83
Fix lambda
yhaliaw Aug 6, 2024
11b9f78
Debug
yhaliaw Aug 7, 2024
4d25f2c
Debug
yhaliaw Aug 7, 2024
d38d067
Add debug
yhaliaw Aug 7, 2024
03dd839
Start new manual test env
yhaliaw Aug 7, 2024
d42f2b5
Add none check
yhaliaw Aug 7, 2024
6aff0f1
Fix missing prefix
yhaliaw Aug 7, 2024
c106fd2
Add more logging
yhaliaw Aug 7, 2024
0f5b6ce
Refactor runner manager one runner fixture
yhaliaw Aug 7, 2024
d0a3173
Fix error string formatting
yhaliaw Aug 7, 2024
dd14f44
Adding the docstring for github_runner_manager
yhaliaw Aug 7, 2024
8cc1325
Fix test fixture scope
yhaliaw Aug 7, 2024
fa0313a
Add docstring on cloud_runner_manager
yhaliaw Aug 7, 2024
66e770f
Add debug
yhaliaw Aug 7, 2024
042f4c2
Fix docstring for cloud runner manager
yhaliaw Aug 7, 2024
c91d78b
Add more docstrings
yhaliaw Aug 7, 2024
db68ce4
Add metrics for deleted and cleanup runners
yhaliaw Aug 8, 2024
ab6b445
Enable tests again
yhaliaw Aug 8, 2024
ef4a020
Add debug
yhaliaw Aug 8, 2024
4aee652
Get runner info not on GitHub
yhaliaw Aug 8, 2024
6403bed
Fix dict access
yhaliaw Aug 8, 2024
6149b9c
Add debug of userdata
yhaliaw Aug 9, 2024
178b281
Fix metric path
yhaliaw Aug 9, 2024
131d6bc
Debug metric
yhaliaw Aug 9, 2024
9a7d138
Fix variable naming
yhaliaw Aug 9, 2024
3fe7977
Test
yhaliaw Aug 9, 2024
755ddc2
Fix iterator
yhaliaw Aug 9, 2024
c8b5021
Debug
yhaliaw Aug 9, 2024
6eb469a
Debug
yhaliaw Aug 9, 2024
5e27cc3
Fix for iterator return value
yhaliaw Aug 9, 2024
26eb6b7
Add more log path patching
yhaliaw Aug 9, 2024
e620c15
Fix path naming
yhaliaw Aug 9, 2024
a652582
Fix monkey patch
yhaliaw Aug 9, 2024
6ab206a
Start a arm64 manual test env
yhaliaw Aug 9, 2024
0f010e6
Not spawning manual test env
yhaliaw Aug 9, 2024
0a38694
Update fmt
yhaliaw Aug 9, 2024
ceae007
Fix metric storage implementation for openstack
yhaliaw Aug 9, 2024
cd96114
Fix metric storage provider usage in openstack runner manager
yhaliaw Aug 9, 2024
71da31e
Debug
yhaliaw Aug 9, 2024
12aa0b8
Fix iterator
yhaliaw Aug 9, 2024
4d19b1d
Add debug
yhaliaw Aug 9, 2024
6c286bf
Fix None in iterator
yhaliaw Aug 9, 2024
e7e2811
Add debug
yhaliaw Aug 9, 2024
2a02728
Trying fix for get runner filter
yhaliaw Aug 9, 2024
f6d1ef7
Add test
yhaliaw Aug 9, 2024
b281a8a
Patch the path for logs
yhaliaw Aug 9, 2024
01d62c1
Add cleanup test
yhaliaw Aug 9, 2024
7333a76
Debug
yhaliaw Aug 9, 2024
163474d
Fix github state determining busy runner
yhaliaw Aug 9, 2024
85a5268
Fix wrong naming for method in ABC
yhaliaw Aug 9, 2024
512101a
Remove debugging
yhaliaw Aug 9, 2024
f7fee48
Add more docstrings
yhaliaw Aug 9, 2024
535c520
Fix runner deletion
yhaliaw Aug 9, 2024
eb08ff7
Add more docs
yhaliaw Aug 9, 2024
fe7951d
Fix typing
yhaliaw Aug 9, 2024
75bdd91
Debug
yhaliaw Aug 9, 2024
812e7dc
Merge branch 'main' into refactor/runner-manager
yhaliaw Aug 9, 2024
b70f1fa
Update SSH health check
yhaliaw Aug 9, 2024
1b8fa81
Tmp disable a passing test
yhaliaw Aug 9, 2024
b3dbc57
Add deubg
yhaliaw Aug 9, 2024
80b3d0a
Remove a debug
yhaliaw Aug 9, 2024
5a4655f
Fix Cloud runner state init
yhaliaw Aug 9, 2024
cb8c426
Change clean up to cleanup
yhaliaw Aug 12, 2024
6c5788e
Fix attr naming issue in openstack cloud
yhaliaw Aug 12, 2024
d58cc6d
Fix reference to non-existing instance_name in openstack cloud
yhaliaw Aug 12, 2024
0cbd90a
Add metric log processing to test
yhaliaw Aug 12, 2024
11c45b1
Enable all tests
yhaliaw Aug 12, 2024
f5551b6
Fix health check return value
yhaliaw Aug 12, 2024
97e5685
Fix all flake8 lints
yhaliaw Aug 12, 2024
3ce240e
Fix test
yhaliaw Aug 12, 2024
2337418
Fix all lints
yhaliaw Aug 12, 2024
5224cd2
Fix unit test issue due to method sig change
yhaliaw Aug 12, 2024
739d75b
Ignore openstack cloud from coverage due to the test requires private…
yhaliaw Aug 12, 2024
94a60c2
Enable all tests
yhaliaw Aug 12, 2024
fa1eda3
Remove a repeated test
yhaliaw Aug 12, 2024
098f58e
Re-enable test.yaml
yhaliaw Aug 12, 2024
6344c7a
Fix integration tests workflwo
yhaliaw Aug 13, 2024
addf218
Add docs on cleanup method of cloud runner manager
yhaliaw Aug 14, 2024
c90cdb3
Add parallel spawning of runners.
yhaliaw Aug 14, 2024
a76e528
Enable dev testing
yhaliaw Aug 14, 2024
91e0a0f
Fix parallel spawn
yhaliaw Aug 14, 2024
7f16bdc
Allow openstack server to take a bit of time on deletion
yhaliaw Aug 14, 2024
ad05ac5
Refactor test detection of no runners
yhaliaw Aug 14, 2024
23bac2f
Re-enable the tests
yhaliaw Aug 14, 2024
325be1f
Fix lints
yhaliaw Aug 14, 2024
4a91bc0
Disable tests again
yhaliaw Aug 14, 2024
d6b50a4
Disable some test
yhaliaw Aug 14, 2024
87f5caf
Add wait until runner is running
yhaliaw Aug 14, 2024
2390478
Enable openstack runner manager tests
yhaliaw Aug 14, 2024
d950094
Add debug
yhaliaw Aug 14, 2024
2f8c9fc
Wait for github state
yhaliaw Aug 14, 2024
0f49d15
Refactor wait until runner spawn
yhaliaw Aug 14, 2024
bed55b1
Add keyfile erorr
yhaliaw Aug 14, 2024
d4e1196
Remove debug statement
yhaliaw Aug 14, 2024
be1cad2
Re-enable all tests
yhaliaw Aug 14, 2024
0c6e668
Update src/manager/github_runner_manager.py
yhaliaw Aug 14, 2024
05f7478
Update src/openstack_cloud/openstack_cloud.py
yhaliaw Aug 14, 2024
248d5d1
Suggestions
yhaliaw Aug 14, 2024
e112a9b
Refactor remove openstack server
yhaliaw Aug 14, 2024
2562939
Test spawning two runners.
yhaliaw Aug 14, 2024
fc11db3
Fix test
yhaliaw Aug 14, 2024
6dad4ab
Fix naming
yhaliaw Aug 14, 2024
a4bca24
Fix according comment
yhaliaw Aug 15, 2024
c7e0ab3
Fix clouds yaml write issue.
yhaliaw Aug 15, 2024
f586aee
Fix format
yhaliaw Aug 15, 2024
95349f8
Add delete runner by amount
yhaliaw Aug 15, 2024
a9e6323
Add getting runner health state for metrics
yhaliaw Aug 15, 2024
6d09cb8
Fix security group ID issues
yhaliaw Aug 16, 2024
134aac7
Fix according to review
yhaliaw Aug 16, 2024
4727f71
Refactor health state for runner
yhaliaw Aug 16, 2024
1d055eb
Fix lint issues
yhaliaw Aug 16, 2024
6383584
Add missing docs
yhaliaw Aug 16, 2024
7c0c225
Update the github state enum to use auto
yhaliaw Aug 16, 2024
3d62ef9
Rename class to fit convension
yhaliaw Aug 16, 2024
d14f92a
Fix according to review
yhaliaw Aug 16, 2024
4bce4a8
Fix name_prefix property cloud runner manager
yhaliaw Aug 19, 2024
0d23dbe
Add class for scaling runners
yhaliaw Aug 19, 2024
ab1c4b8
Fix lints
yhaliaw Aug 20, 2024
ba2800d
Fix unit test
yhaliaw Aug 20, 2024
a7979d1
Fix according to review comment
yhaliaw Aug 20, 2024
1602525
Fix test according to comments
yhaliaw Aug 20, 2024
e8fc03b
Merge branch 'refactor/runner-manager' into refactor/use-runner-manager
yhaliaw Aug 20, 2024
66003f4
Fix unit test
yhaliaw Aug 20, 2024
745c7fa
Merge branch 'refactor/runner-manager' into refactor/use-runner-manager
yhaliaw Aug 20, 2024
16ae84e
Fix typo of attr
yhaliaw Aug 21, 2024
6b96dd4
Add debug
yhaliaw Aug 21, 2024
9657299
Add debug statement
yhaliaw Aug 21, 2024
29ef809
Debug
yhaliaw Aug 21, 2024
d14effb
Fix return code of the kill command
yhaliaw Aug 21, 2024
09a13c9
Remove debug
yhaliaw Aug 21, 2024
f08b4ad
Add comments on the flush kill command
yhaliaw Aug 21, 2024
68bd0cc
Add debug
yhaliaw Aug 21, 2024
d92da28
Fix debug
yhaliaw Aug 21, 2024
96dfab7
Debug
yhaliaw Aug 21, 2024
5a92be9
Debug
yhaliaw Aug 21, 2024
d2d3b21
Remove debug
yhaliaw Aug 21, 2024
c48ef0b
Add cleanup during idle and busy runner test
yhaliaw Aug 21, 2024
3f34863
Debug
yhaliaw Aug 21, 2024
e79bafe
Disable tests during debug
yhaliaw Aug 21, 2024
ccb6225
Debug missing keyfiles
yhaliaw Aug 21, 2024
4a26d75
Fix keyfile path matching issue
yhaliaw Aug 21, 2024
1292940
testing
yhaliaw Aug 21, 2024
b1af621
debug
yhaliaw Aug 21, 2024
88b8fc3
Add debug
yhaliaw Aug 21, 2024
f5ded42
Use OR
yhaliaw Aug 21, 2024
abe0b07
debug
yhaliaw Aug 21, 2024
5db2f6d
Debug
yhaliaw Aug 21, 2024
1cfe5f0
Debug
yhaliaw Aug 21, 2024
6709348
Debug
yhaliaw Aug 21, 2024
e168737
Debug
yhaliaw Aug 21, 2024
550b81a
Debug
yhaliaw Aug 21, 2024
ca52e57
Fix flush mode
yhaliaw Aug 21, 2024
0c730d6
Remove debug
yhaliaw Aug 21, 2024
6edf7c0
Re-enable all tests
yhaliaw Aug 21, 2024
57fd014
Merge branch 'refactor/runner-manager' into refactor/use-runner-manager
yhaliaw Aug 22, 2024
4e3134b
Initial unit test for runner scaler
yhaliaw Aug 22, 2024
7632c91
Add more unit tests for runner scaler
yhaliaw Aug 22, 2024
52a7724
Add more tests
yhaliaw Aug 26, 2024
b6096c6
Merge branch 'main' into refactor/use-runner-manager
yhaliaw Aug 26, 2024
7c5a78e
Fix merge issues
yhaliaw Aug 26, 2024
a473b68
Fix states in get_runners methods
yhaliaw Aug 27, 2024
895206e
Add docstring for unit test mocks
yhaliaw Aug 27, 2024
81815c4
Fix construction of repo-policy-compliance from config
yhaliaw Aug 27, 2024
4012ed0
Fix get_runners action output
yhaliaw Aug 27, 2024
782d145
Fix the lints
yhaliaw Aug 27, 2024
40bec79
Fix a naming issue
yhaliaw Aug 27, 2024
e036d19
Fix naming prefix of runner
yhaliaw Aug 27, 2024
c1c0ed9
Improve unit test
yhaliaw Aug 28, 2024
14a787a
Remove the old OpenstackRunnerManager
yhaliaw Aug 28, 2024
19b1a38
Fix test contstruction of runner manager.
yhaliaw Aug 28, 2024
dab5611
Fix flavor naming
yhaliaw Aug 28, 2024
921ce2a
Fix flush action result output.
yhaliaw Aug 28, 2024
4a3866e
Fix flavor of metric
yhaliaw Aug 28, 2024
e5c7f3a
Merge branch 'main' into refactor/use-runner-manager
yhaliaw Aug 28, 2024
c11028e
Testing out a integration test fikx
yhaliaw Aug 28, 2024
58a6782
change flush runner to flush idle.
yhaliaw Aug 29, 2024
9b57745
Add debug in integration test
yhaliaw Aug 29, 2024
c51bb7b
Manual test mode
yhaliaw Aug 29, 2024
9e9eb33
Start new manual test env
yhaliaw Aug 29, 2024
73f9642
Spawn x64 manual test env.
yhaliaw Aug 29, 2024
2f634fc
Merge branch 'main' into refactor/use-runner-manager
yhaliaw Aug 29, 2024
9785bcf
Improve logging during reconcile
yhaliaw Aug 29, 2024
7e5859b
Fix crashed metric collection
yhaliaw Aug 29, 2024
3fa5c17
Remove debug workflow
yhaliaw Aug 29, 2024
08477ee
Format
yhaliaw Aug 29, 2024
f45b004
Test
yhaliaw Aug 29, 2024
febc652
Add reactive back in
yhaliaw Aug 30, 2024
7b430e5
Fix flushing of runners
yhaliaw Aug 30, 2024
85f7079
Debug workflow
yhaliaw Aug 30, 2024
cd7d81b
Add debug
yhaliaw Aug 30, 2024
1534311
Fix logging of health state
yhaliaw Aug 30, 2024
8fa1fd5
Remove debug
yhaliaw Aug 30, 2024
d531297
Debug
yhaliaw Sep 1, 2024
7fd2774
Fix set contruction
yhaliaw Sep 1, 2024
436325d
Fix SSH key path in integration test setup
yhaliaw Sep 1, 2024
f1b0d68
Add more checks to repo-policy-compliance setup in tests
yhaliaw Sep 2, 2024
7603bc1
Fix key path check
yhaliaw Sep 2, 2024
8bcea00
Fix format string issue
yhaliaw Sep 2, 2024
031c113
Fix format string typo
yhaliaw Sep 2, 2024
943e6d6
Merge branch 'main' into refactor/use-runner-manager
yhaliaw Sep 2, 2024
49184a6
Add some logging of test setup
yhaliaw Sep 3, 2024
2eafedc
Fix missing await
yhaliaw Sep 3, 2024
5b7830f
Revert config-change flushing
yhaliaw Sep 3, 2024
4e0594e
Add maintance status for image relation change
yhaliaw Sep 3, 2024
80e7552
Fix HTTP format
yhaliaw Sep 3, 2024
f56e291
Update coverage ignore of github_runner_manager
yhaliaw Sep 4, 2024
711b6eb
Minor fix in test comments
yhaliaw Sep 4, 2024
e158db3
Merge branch 'main' into refactor/use-runner-manager
cbartz Sep 4, 2024
14aedab
Merge branch 'main' into refactor/use-runner-manager
yhaliaw Sep 5, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ omit = [
]

[tool.coverage.report]
fail_under = 83
fail_under = 85
show_missing = true

[tool.pytest.ini_options]
Expand Down
10 changes: 5 additions & 5 deletions src-docs/charm.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ Charm for creating and managing GitHub self-hosted runner instances.

---

<a href="../src/charm.py#L102"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>
<a href="../src/charm.py#L109"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>

## <kbd>function</kbd> `catch_charm_errors`

Expand All @@ -46,7 +46,7 @@ Catch common errors in charm.

---

<a href="../src/charm.py#L148"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>
<a href="../src/charm.py#L155"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>

## <kbd>function</kbd> `catch_action_errors`

Expand All @@ -72,7 +72,7 @@ Catch common errors in actions.

---

<a href="../src/charm.py#L95"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>
<a href="../src/charm.py#L102"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>

## <kbd>class</kbd> `ReconcileRunnersEvent`
Event representing a periodic check to ensure runners are ok.
Expand All @@ -83,7 +83,7 @@ Event representing a periodic check to ensure runners are ok.

---

<a href="../src/charm.py#L186"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>
<a href="../src/charm.py#L193"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>

## <kbd>class</kbd> `GithubRunnerCharm`
Charm for managing GitHub self-hosted runners.
Expand All @@ -100,7 +100,7 @@ Charm for managing GitHub self-hosted runners.
- <b>`ram_pool_path`</b>: The path to memdisk storage.
- <b>`kernel_module_path`</b>: The path to kernel modules.

<a href="../src/charm.py#L209"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>
<a href="../src/charm.py#L216"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>

### <kbd>method</kbd> `__init__`

Expand Down
65 changes: 38 additions & 27 deletions src-docs/errors.md
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,17 @@ Error for setting up aproxy.

<a href="../src/errors.py#L42"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>

## <kbd>class</kbd> `MissingServerConfigError`
Error for unable to create runner due to missing server configurations.





---

<a href="../src/errors.py#L46"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>

## <kbd>class</kbd> `MissingRunnerBinaryError`
Error for missing runner binary.

Expand All @@ -108,7 +119,7 @@ Error for missing runner binary.

---

<a href="../src/errors.py#L46"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>
<a href="../src/errors.py#L50"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>

## <kbd>class</kbd> `ConfigurationError`
Error for juju configuration.
Expand All @@ -119,7 +130,7 @@ Error for juju configuration.

---

<a href="../src/errors.py#L50"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>
<a href="../src/errors.py#L54"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>

## <kbd>class</kbd> `MissingMongoDBError`
Error for missing integration data.
Expand All @@ -130,7 +141,7 @@ Error for missing integration data.

---

<a href="../src/errors.py#L54"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>
<a href="../src/errors.py#L58"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>

## <kbd>class</kbd> `LxdError`
Error for executing LXD actions.
Expand All @@ -141,7 +152,7 @@ Error for executing LXD actions.

---

<a href="../src/errors.py#L58"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>
<a href="../src/errors.py#L62"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>

## <kbd>class</kbd> `SubprocessError`
Error for Subprocess calls.
Expand All @@ -155,7 +166,7 @@ Error for Subprocess calls.
- <b>`stdout`</b>: Content of stdout of the subprocess.
- <b>`stderr`</b>: Content of stderr of the subprocess.

<a href="../src/errors.py#L68"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>
<a href="../src/errors.py#L72"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>

### <kbd>method</kbd> `__init__`

Expand Down Expand Up @@ -185,7 +196,7 @@ Construct the subprocess error.

---

<a href="../src/errors.py#L91"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>
<a href="../src/errors.py#L95"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>

## <kbd>class</kbd> `IssueMetricEventError`
Represents an error when issuing a metric event.
Expand All @@ -196,7 +207,7 @@ Represents an error when issuing a metric event.

---

<a href="../src/errors.py#L95"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>
<a href="../src/errors.py#L99"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>

## <kbd>class</kbd> `LogrotateSetupError`
Represents an error raised when logrotate cannot be setup.
Expand All @@ -207,7 +218,7 @@ Represents an error raised when logrotate cannot be setup.

---

<a href="../src/errors.py#L99"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>
<a href="../src/errors.py#L103"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>

## <kbd>class</kbd> `MetricsStorageError`
Base class for all metrics storage errors.
Expand All @@ -218,7 +229,7 @@ Base class for all metrics storage errors.

---

<a href="../src/errors.py#L103"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>
<a href="../src/errors.py#L107"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>

## <kbd>class</kbd> `SharedFilesystemError`
Base class for all shared filesystem errors.
Expand All @@ -229,7 +240,7 @@ Base class for all shared filesystem errors.

---

<a href="../src/errors.py#L107"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>
<a href="../src/errors.py#L111"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>

## <kbd>class</kbd> `CreateMetricsStorageError`
Represents an error when the metrics storage could not be created.
Expand All @@ -240,7 +251,7 @@ Represents an error when the metrics storage could not be created.

---

<a href="../src/errors.py#L111"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>
<a href="../src/errors.py#L115"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>

## <kbd>class</kbd> `DeleteMetricsStorageError`
Represents an error when the metrics storage could not be deleted.
Expand All @@ -251,7 +262,7 @@ Represents an error when the metrics storage could not be deleted.

---

<a href="../src/errors.py#L115"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>
<a href="../src/errors.py#L119"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>

## <kbd>class</kbd> `GetMetricsStorageError`
Represents an error when the metrics storage could not be retrieved.
Expand All @@ -262,7 +273,7 @@ Represents an error when the metrics storage could not be retrieved.

---

<a href="../src/errors.py#L119"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>
<a href="../src/errors.py#L123"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>

## <kbd>class</kbd> `QuarantineMetricsStorageError`
Represents an error when the metrics storage could not be quarantined.
Expand All @@ -273,7 +284,7 @@ Represents an error when the metrics storage could not be quarantined.

---

<a href="../src/errors.py#L123"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>
<a href="../src/errors.py#L127"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>

## <kbd>class</kbd> `SharedFilesystemMountError`
Represents an error related to the mounting of the shared filesystem.
Expand All @@ -284,7 +295,7 @@ Represents an error related to the mounting of the shared filesystem.

---

<a href="../src/errors.py#L127"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>
<a href="../src/errors.py#L131"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>

## <kbd>class</kbd> `RunnerMetricsError`
Base class for all runner metrics errors.
Expand All @@ -295,7 +306,7 @@ Base class for all runner metrics errors.

---

<a href="../src/errors.py#L131"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>
<a href="../src/errors.py#L135"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>

## <kbd>class</kbd> `CorruptMetricDataError`
Represents an error with the data being corrupt.
Expand All @@ -306,7 +317,7 @@ Represents an error with the data being corrupt.

---

<a href="../src/errors.py#L135"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>
<a href="../src/errors.py#L139"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>

## <kbd>class</kbd> `GithubMetricsError`
Base class for all github metrics errors.
Expand All @@ -317,7 +328,7 @@ Base class for all github metrics errors.

---

<a href="../src/errors.py#L139"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>
<a href="../src/errors.py#L143"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>

## <kbd>class</kbd> `GithubClientError`
Base class for all github client errors.
Expand All @@ -328,7 +339,7 @@ Base class for all github client errors.

---

<a href="../src/errors.py#L143"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>
<a href="../src/errors.py#L147"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>

## <kbd>class</kbd> `GithubApiError`
Represents an error when the GitHub API returns an error.
Expand All @@ -339,7 +350,7 @@ Represents an error when the GitHub API returns an error.

---

<a href="../src/errors.py#L147"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>
<a href="../src/errors.py#L151"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>

## <kbd>class</kbd> `TokenError`
Represents an error when the token is invalid or has not enough permissions.
Expand All @@ -350,7 +361,7 @@ Represents an error when the token is invalid or has not enough permissions.

---

<a href="../src/errors.py#L151"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>
<a href="../src/errors.py#L155"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>

## <kbd>class</kbd> `JobNotFoundError`
Represents an error when the job could not be found on GitHub.
Expand All @@ -361,7 +372,7 @@ Represents an error when the job could not be found on GitHub.

---

<a href="../src/errors.py#L155"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>
<a href="../src/errors.py#L159"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>

## <kbd>class</kbd> `RunnerLogsError`
Base class for all runner logs errors.
Expand All @@ -372,7 +383,7 @@ Base class for all runner logs errors.

---

<a href="../src/errors.py#L159"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>
<a href="../src/errors.py#L163"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>

## <kbd>class</kbd> `OpenStackError`
Base class for OpenStack errors.
Expand All @@ -383,7 +394,7 @@ Base class for OpenStack errors.

---

<a href="../src/errors.py#L163"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>
<a href="../src/errors.py#L167"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>

## <kbd>class</kbd> `OpenStackInvalidConfigError`
Represents an invalid OpenStack configuration.
Expand All @@ -394,7 +405,7 @@ Represents an invalid OpenStack configuration.

---

<a href="../src/errors.py#L167"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>
<a href="../src/errors.py#L171"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>

## <kbd>class</kbd> `OpenStackUnauthorizedError`
Represents an unauthorized connection to OpenStack.
Expand All @@ -405,7 +416,7 @@ Represents an unauthorized connection to OpenStack.

---

<a href="../src/errors.py#L171"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>
<a href="../src/errors.py#L175"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>

## <kbd>class</kbd> `SSHError`
Represents an error while interacting with SSH.
Expand All @@ -416,7 +427,7 @@ Represents an error while interacting with SSH.

---

<a href="../src/errors.py#L175"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>
<a href="../src/errors.py#L179"><img align="right" style="float:right;" src="https://img.shields.io/badge/-source-cccccc?style=flat-square"></a>

## <kbd>class</kbd> `KeyfileError`
Represents missing keyfile for SSH.
Expand Down
12 changes: 6 additions & 6 deletions src-docs/github_client.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ Instantiate the GiHub API client.
### <kbd>method</kbd> `delete_runner`

```python
delete_runner(path: GithubOrg | GithubRepo, runner_id: int) → None
delete_runner(path: GitHubOrg | GitHubRepo, runner_id: int) → None
```

Delete the self-hosted runner from GitHub.
Expand All @@ -87,7 +87,7 @@ Delete the self-hosted runner from GitHub.

```python
get_job_info(
path: GithubRepo,
path: GitHubRepo,
workflow_run_id: str,
runner_name: str
) → JobStats
Expand Down Expand Up @@ -123,7 +123,7 @@ Get information about a job for a specific workflow run.

```python
get_runner_application(
path: GithubOrg | GithubRepo,
path: GitHubOrg | GitHubRepo,
arch: Arch,
os: str = 'linux'
) → RunnerApplication
Expand Down Expand Up @@ -157,7 +157,7 @@ Get runner application available for download for given arch.
### <kbd>method</kbd> `get_runner_github_info`

```python
get_runner_github_info(path: GithubOrg | GithubRepo) → list[SelfHostedRunner]
get_runner_github_info(path: GitHubOrg | GitHubRepo) → list[SelfHostedRunner]
```

Get runner information on GitHub under a repo or org.
Expand All @@ -180,7 +180,7 @@ Get runner information on GitHub under a repo or org.
### <kbd>method</kbd> `get_runner_registration_token`

```python
get_runner_registration_token(path: GithubOrg | GithubRepo) → str
get_runner_registration_token(path: GitHubOrg | GitHubRepo) → str
```

Get token from GitHub used for registering runners.
Expand All @@ -203,7 +203,7 @@ Get token from GitHub used for registering runners.
### <kbd>method</kbd> `get_runner_remove_token`

```python
get_runner_remove_token(path: GithubOrg | GithubRepo) → str
get_runner_remove_token(path: GitHubOrg | GitHubRepo) → str
```

Get token from GitHub used for removing runners.
Expand Down
5 changes: 4 additions & 1 deletion src-docs/openstack_cloud.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,10 @@ Module for managing Openstack cloud.

**Global Variables**
---------------
- **openstack_manager**: # Copyright 2024 Canonical Ltd.
- **openstack_cloud**: # Copyright 2024 Canonical Ltd.
# See LICENSE file for licensing details.

- **openstack_runner_manager**: # Copyright 2024 Canonical Ltd.
# See LICENSE file for licensing details.


Expand Down
4 changes: 2 additions & 2 deletions src-docs/openstack_cloud.openstack_manager.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ create_instance_config(
app_name: str,
unit_num: int,
image_id: str,
path: GithubOrg | GithubRepo,
path: GitHubOrg | GitHubRepo,
labels: Iterable[str],
registration_token: str
) → InstanceConfig
Expand Down Expand Up @@ -75,7 +75,7 @@ The configuration values for creating a single runner instance.

```python
__init__(
github_path: GithubOrg | GithubRepo,
github_path: GitHubOrg | GitHubRepo,
image_id: str,
labels: Iterable[str],
name: str,
Expand Down
Loading
Loading