gitlab-runner-installed

Description

Install a gitlab runner.

Variables

Name Type Default Description

arch

string amd64

The architecture of the target system.

dest

string --

The (absolute) path to the parent folder of the downloaded executable file.

group

string --

The group of the executable.

owner

string --

The owner of the executable.

platform

string linux

The target platform.

Code

doc:
  short_help: Install a gitlab runner.

args:
  _import: executable-downloaded
  platform:
    doc:
      short_help: The target platform.
    type: string
    required: false
    default: linux
    allowed:
    - linux
    - darwin
    - freebsd
  arch:
    doc:
      short_help: The architecture of the target system.
    type: string
    required: false
    default: amd64
    allowed:
    - amd64
    - '386'
    - arm

frecklets:
- packages-installed:
    become: true
    packages:
    - name: ca-certificates
      pkgs:
        debian: ca-certificates
- executable-downloaded:
    url: 'https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-{{::
      platform ::}}-{{:: arch ::}}'
    dest: '{{:: dest ::}}'
    exe_name: gitlab-runner
    exe_mode: '0755'
    extract: false
    group: '{{:: group ::}}'
    owner: '{{:: owner ::}}'
frecklecute gitlab-runner-installed --help

Usage: frecklecute gitlab-runner-installed [OPTIONS]

  Install a gitlab runner.

Options:
  --arch ARCH          The architecture of the target system.
  --dest DEST          The (absolute) path to the parent folder of the
                       downloaded executable file.
  --group GROUP        The group of the executable.
  --owner USER         The owner of the executable.
  --platform PLATFORM  The target platform.
  --help               Show this message and exit.
# -*- coding: utf-8 -*-


#
# module path: pycklets.gitlab_runner_installed.GitlabRunnerInstalled
#


from dataclasses import dataclass
from pyckles import AutoPycklet
from typing import *    # noqa

@dataclass
class GitlabRunnerInstalled(AutoPycklet):
    """Install a gitlab runner.

       Args:
         arch: The architecture of the target system.
         dest: The (absolute) path to the parent folder of the downloaded executable file.
         group: The group of the executable.
         owner: The owner of the executable.
         platform: The target platform.

    """

    FRECKLET_ID = "gitlab-runner-installed"

    arch: str = None
    dest: str = None
    group: str = None
    owner: str = None
    platform: str = None


    def __post_init__(self):
        super(GitlabRunnerInstalled, self).__init__(var_names=["arch", "dest", "group", "owner", "platform"])


frecklet_class = GitlabRunnerInstalled
# -*- coding: utf-8 -*-


#
# module path: pycklets.gitlab_runner_installed.GitlabRunnerInstalled
#


from pyckles import AutoPycklet

class GitlabRunnerInstalled(AutoPycklet):
    """Install a gitlab runner.

       Args:
         arch: The architecture of the target system.
         dest: The (absolute) path to the parent folder of the downloaded executable file.
         group: The group of the executable.
         owner: The owner of the executable.
         platform: The target platform.

    """

    FRECKLET_ID = "gitlab-runner-installed"

    def __init__(self, arch="amd64", dest=None, group=None, owner=None, platform="linux"):

        super(GitlabRunnerInstalled, self).__init__(var_names=["arch", "dest", "group", "owner", "platform"])
        self._arch = arch
        self._dest = dest
        self._group = group
        self._owner = owner
        self._platform = platform

    @property
    def arch(self):
        return self._arch

    @arch.setter
    def arch(self, arch):
        self._arch = arch

    @property
    def dest(self):
        return self._dest

    @dest.setter
    def dest(self, dest):
        self._dest = dest

    @property
    def group(self):
        return self._group

    @group.setter
    def group(self, group):
        self._group = group

    @property
    def owner(self):
        return self._owner

    @owner.setter
    def owner(self, owner):
        self._owner = owner

    @property
    def platform(self):
        return self._platform

    @platform.setter
    def platform(self, platform):
        self._platform = platform



frecklet_class = GitlabRunnerInstalled