Coverage for src/package/bundle.py: 100.00%
62 statements
« prev ^ index » next coverage.py v7.15.4, created at 2026-10-18 15:02 +0000
« prev ^ index » next coverage.py v7.15.4, created at 2026-10-18 15:02 +0000
1#!/usr/bin/env python3
3# Standard libraries
4from typing import List
6# Bundle class, pylint: disable=too-few-public-methods
7class Bundle:
9 # Aliases
10 ALIAS: str = 'gitlabci-local'
12 # Arguments
13 ARGUMENT_NETWORKS_ENUM: List[str] = ['bridge', 'host', 'none']
14 ARGUMENT_SSH_USER_DEFAULT: str = 'root'
15 ARGUMENT_TAGS_DEFAULT: List[str] = ['deploy', 'local', 'publish']
17 # Names
18 NAME: str = 'gcil'
20 # Packages
21 PACKAGE: str = 'gitlabci-local'
23 # Configurations
24 CONFIGURATION: str = '.gitlab-ci.yml'
26 # Details
27 DESCRIPTION: str = f'Launch {CONFIGURATION} jobs locally (aliases: {ALIAS})'
29 # Sources
30 REPOSITORY: str = 'https://gitlab.com/RadianDevCore/tools/gcil'
32 # Releases
33 RELEASE_FIRST_TIMESTAMP: int = 1579337311
35 # Environment
36 ENV_COMMIT_SHA: str = 'CI_COMMIT_SHA'
37 ENV_COMMIT_REF_NAME: str = 'CI_COMMIT_REF_NAME'
38 ENV_COMMIT_REF_SLUG: str = 'CI_COMMIT_REF_SLUG'
39 ENV_COMMIT_SHORT_SHA1: str = 'CI_COMMIT_SHORT_SHA'
40 ENV_COMMIT_TIMESTAMP: str = 'CI_COMMIT_TIMESTAMP'
41 ENV_DEBUG_UPDATES_DAILY: str = 'DEBUG_UPDATES_DAILY'
42 ENV_DEBUG_UPDATES_DISABLE: str = 'DEBUG_UPDATES_DISABLE'
43 ENV_DEBUG_UPDATES_FAKE: str = 'DEBUG_UPDATES_FAKE'
44 ENV_DEBUG_UPDATES_OFFLINE: str = 'DEBUG_UPDATES_OFFLINE'
45 ENV_DEBUG_VERSION_FAKE: str = 'DEBUG_VERSION_FAKE'
46 ENV_DEFAULT_BRANCH: str = 'CI_DEFAULT_BRANCH'
47 ENV_DISPLAY_XAUTH_MAGIC_ADD: str = 'CI_LOCAL_DISPLAY_XAUTH_MAGIC_ADD'
48 ENV_ENGINE_NAME: str = 'CI_LOCAL_ENGINE_NAME'
49 ENV_FORCE_COLOR: str = 'FORCE_COLOR'
50 ENV_GIT_BINARY_PATH: str = 'GIT_BINARY_PATH'
51 ENV_HISTORIES_DURATION_FAKE: str = 'CI_LOCAL_HISTORIES_DURATION_FAKE'
52 ENV_HOST: str = 'CI_LOCAL_HOST'
53 ENV_IMAGE_DEFAULT: str = 'CI_LOCAL_IMAGE_DEFAULT'
54 ENV_LOCAL: str = 'CI_LOCAL'
55 ENV_NO_COLOR: str = 'NO_COLOR'
56 ENV_NOTIFY_BINARY_PATH: str = 'NOTIFY_BINARY_PATH'
57 ENV_PODMAN_BINARY_PATH: str = 'PODMAN_BINARY_PATH'
58 ENV_PROJECT_NAME: str = 'CI_PROJECT_NAME'
59 ENV_PROJECT_NAMESPACE: str = 'CI_PROJECT_NAMESPACE'
60 ENV_USER_HOST_GID: str = 'CI_LOCAL_USER_HOST_GID'
61 ENV_USER_HOST_UID: str = 'CI_LOCAL_USER_HOST_UID'
62 ENV_USER_HOST_USERNAME: str = 'CI_LOCAL_USER_HOST_USERNAME'
63 ENV_WINPTY: str = 'CI_LOCAL_WINPTY'
64 ENV_WINPTY_PATH: str = 'WINPTY_BINARY_PATH'
66 # Flags
67 FLAG_AFTER: str = 'CI_LOCAL_AFTER'
68 FLAG_BASH: str = 'CI_LOCAL_BASH'
69 FLAG_BEFORE: str = 'CI_LOCAL_BEFORE'
70 FLAG_DEBUG: str = 'CI_LOCAL_DEBUG'
71 FLAG_DISPLAY: str = 'CI_LOCAL_DISPLAY'
72 FLAG_ENGINE: str = 'CI_LOCAL_ENGINE'
73 FLAG_EXTENDS_INCOMPLETE: str = 'CI_LOCAL_EXTENDS_INCOMPLETE'
74 FLAG_HOST: str = 'CI_LOCAL_HOST'
75 FLAG_MANUAL: str = 'CI_LOCAL_MANUAL'
76 FLAG_NETWORK: str = 'CI_LOCAL_NETWORK'
77 FLAG_NO_CONSOLE: str = 'CI_LOCAL_NO_CONSOLE'
78 FLAG_NO_VERBOSE: str = 'CI_LOCAL_NO_VERBOSE'
79 FLAG_NOTIFY: str = 'CI_LOCAL_NOTIFY'
80 FLAG_PRIVILEGED: str = 'CI_LOCAL_PRIVILEGED'
81 FLAG_REAL_PATHS: str = 'CI_LOCAL_REAL_PATHS'
82 FLAG_QUIET: str = 'CI_LOCAL_QUIET'
83 FLAG_RANDOM_PATHS: str = 'CI_LOCAL_RANDOM_PATHS'
84 FLAG_SHELL: str = 'CI_LOCAL_SHELL'
85 FLAG_SOCKETS: str = 'CI_LOCAL_SOCKETS'
86 FLAG_SSH: str = 'CI_LOCAL_SSH'
87 FLAG_WORKDIR: str = 'CI_LOCAL_WORKDIR'