Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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 .github/workflows/integration_test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ jobs:
juju-channel: 3.6/stable
provider: lxd
test-tox-env: integration-juju3.6
modules: '["test_charm_metrics_failure", "test_charm_metrics_success", "test_charm_fork_repo", "test_charm_fork_path_change", "test_charm_no_runner", "test_charm_runner", "test_debug_ssh", "test_charm_upgrade", "test_reactive", "test_jobmanager_prespawned", "test_jobmanager_reactive"]'
modules: '["test_charm_metrics_failure", "test_charm_metrics_success", "test_charm_fork_repo", "test_charm_fork_path_change", "test_charm_no_runner", "test_charm_runner", "test_debug_ssh", "test_charm_upgrade", "test_reactive"]'
extra-arguments: '-m openstack --log-format="%(asctime)s %(levelname)s %(message)s"'
self-hosted-runner: true
self-hosted-runner-label: pfe-ci
Expand Down
1 change: 0 additions & 1 deletion .licenserc.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,5 @@ header:
- '.woke.yaml'
- 'lib/**'
- 'github-runner-manager/**'
- 'jobmanager/**'
- '.lycheeignore'
comment: on-failure
1 change: 0 additions & 1 deletion .vale/styles/config/vocabularies/local/accept.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
aproxy
Aproxy
iptables
jobmanager
Tmate
4 changes: 1 addition & 3 deletions .woke.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,4 @@
ignore_files:
# This is autogenerated code
- jobmanager/**
ignore_files: []
rules:
# Ignore whitelist - we are using it to ignore pydantic in pyproject.toml and pylintrc
- name: whitelist
4 changes: 4 additions & 0 deletions docs/changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,10 @@

- Added Grafana dashboard using Prometheus data source.

## 2025-11-12

- Removed the jobmanager platform provider and related integration tests as they are no longer used and not part of any public API.

Check failure on line 11 in docs/changelog.md

View workflow job for this annotation

GitHub Actions / docs-checks / vale

[vale] reported by reviewdog 🐶 [Canonical.000-US-spellcheck] The word 'jobmanager' seems to be misspelled. Raw Output: {"message": "[Canonical.000-US-spellcheck] The word 'jobmanager' seems to be misspelled.", "location": {"path": "docs/changelog.md", "range": {"start": {"line": 11, "column": 15}}}, "severity": "ERROR"}

## 2025-08-27

- Updated the documentation workflow to be fully integrated with the Vale GitHub Action.
Expand Down
2 changes: 1 addition & 1 deletion github-runner-manager/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

[project]
name = "github-runner-manager"
version = "0.6.3"
version = "0.7.0"
authors = [
{ name = "Canonical IS DevOps", email = "is-devops-team@canonical.com" },
]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
import yaml
from pydantic import AnyHttpUrl, BaseModel, Field, IPvAnyAddress, MongoDsn, root_validator

from github_runner_manager.configuration import github, jobmanager
from github_runner_manager.configuration import github
from github_runner_manager.openstack_cloud.configuration import OpenStackConfiguration

logger = logging.getLogger(__name__)
Expand Down Expand Up @@ -40,7 +40,6 @@ class ApplicationConfiguration(BaseModel):
Attributes:
name: Name to identify the manager. Used for metrics.
extra_labels: Extra labels to add to the runner.
jobmanager_config: Configuration for the jobmanager platform.
github_config: GitHub configuration.
service_config: The configuration for supporting services.
non_reactive_configuration: Configuration for non-reactive mode.
Expand All @@ -51,7 +50,6 @@ class ApplicationConfiguration(BaseModel):

name: str
extra_labels: list[str]
jobmanager_config: jobmanager.JobManagerConfiguration | None
github_config: github.GitHubConfiguration | None
service_config: "SupportServiceConfig"
non_reactive_configuration: "NonReactiveConfiguration"
Expand Down

This file was deleted.

184 changes: 0 additions & 184 deletions github-runner-manager/src/github_runner_manager/jobmanager_api.py

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -163,7 +163,7 @@ class RunnerMetadata:
platform ones.

Attributes:
platform_name: Platform name where the runner resides (github, jobmanager...)
platform_name: Platform name where the runner resides (currently only github)
Comment thread
yanksyoon marked this conversation as resolved.
runner_id: Id of the runner in the platform
url: URL for the runner.
"""
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -144,7 +144,6 @@ def build( # pylint: disable-msg=too-many-locals
platform_provider = platform_factory(
vm_prefix=application_configuration.openstack_configuration.vm_prefix,
github_config=application_configuration.github_config,
jobmanager_config=application_configuration.jobmanager_config,
)

runner_manager = RunnerManager(
Expand All @@ -167,7 +166,6 @@ def build( # pylint: disable-msg=too-many-locals
queue=reactive_config.queue,
manager_name=application_configuration.name,
github_configuration=application_configuration.github_config,
jobmanager_configuration=application_configuration.jobmanager_config,
cloud_runner_manager=openstack_runner_manager_config,
supported_labels=supported_labels,
labels=labels,
Expand All @@ -179,9 +177,7 @@ def build( # pylint: disable-msg=too-many-locals
user=user,
base_quantity=base_quantity,
max_quantity=max_quantity,
platform_name=(
Platform.GITHUB if application_configuration.github_config else Platform.JOBMANAGER
),
platform_name=Platform.GITHUB,
python_path=python_path,
)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,34 +3,26 @@

"""Factory for instantiating platform provider."""
from github_runner_manager.configuration.github import GitHubConfiguration
from github_runner_manager.configuration.jobmanager import JobManagerConfiguration
from github_runner_manager.platform.github_provider import GitHubRunnerPlatform
from github_runner_manager.platform.jobmanager_provider import JobManagerPlatform
from github_runner_manager.platform.platform_provider import PlatformProvider


def platform_factory(
vm_prefix: str,
github_config: GitHubConfiguration | None,
jobmanager_config: JobManagerConfiguration | None,
) -> PlatformProvider:
"""Instantiate a concrete Platform Provider.

Args:
vm_prefix: The prefix for the virtual machines to be created.
github_config: Configuration of the GitHub instance.
jobmanager_config: Configuration of the job manager.

Raises:
ValueError: If an invalid configuration has been passed.

Returns:
A concrete platform provider.
"""
if github_config and jobmanager_config:
raise ValueError("Multiple configuration provided.")
if github_config:
return GitHubRunnerPlatform.build(prefix=vm_prefix, github_configuration=github_config)
if jobmanager_config:
return JobManagerPlatform.build(jobmanager_configuration=jobmanager_config)
raise ValueError("Missing configuration.")
if not github_config:
raise ValueError("Missing configuration.")
return GitHubRunnerPlatform.build(prefix=vm_prefix, github_configuration=github_config)
Loading
Loading