From f67f777565d2465eff519305a363f5613167aad0 Mon Sep 17 00:00:00 2001 From: Robert Kaussow Date: Wed, 30 Sep 2020 21:39:09 +0000 Subject: [PATCH] commit fb6ca0b15cdfaeaa3a08fe4e493a88c92941db49 Author: Robert Kaussow Date: Wed Sep 30 23:34:16 2020 +0200 fix ssh key deployment --- index.md | 398 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 398 insertions(+) create mode 100644 index.md diff --git a/index.md b/index.md new file mode 100644 index 0000000..6f566c3 --- /dev/null +++ b/index.md @@ -0,0 +1,398 @@ +--- +title: droneci_autoscaler +type: docs +--- + +[![Source Code](https://img.shields.io/badge/gitea-source%20code-blue?logo=gitea&logoColor=white)](https://gitea.rknet.org/ansible/xoxys.droneci_autoscaler) [![Build Status](https://img.shields.io/drone/build/ansible/xoxys.droneci_autoscaler?logo=drone&server=https%3A%2F%2Fdrone.rknet.org)](https://drone.rknet.org/ansible/xoxys.droneci_autoscaler) [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg?label=license)](LICENSE) + +Setup [Drone CI autoscaler](https://autoscale.drone.io/). + +* [Default Variables](#default-variables) + * [droneci_autoscaler_agent_architecture](#droneci_autoscaler_agent_architecture) + * [droneci_autoscaler_agent_concurrency](#droneci_autoscaler_agent_concurrency) + * [droneci_autoscaler_agent_image](#droneci_autoscaler_agent_image) + * [droneci_autoscaler_agent_os](#droneci_autoscaler_agent_os) + * [droneci_autoscaler_agent_package_upgrade](#droneci_autoscaler_agent_package_upgrade) + * [droneci_autoscaler_agent_token](#droneci_autoscaler_agent_token) + * [droneci_autoscaler_agent_volumes](#droneci_autoscaler_agent_volumes) + * [droneci_autoscaler_db_type](#droneci_autoscaler_db_type) + * [droneci_autoscaler_gc_enabled](#droneci_autoscaler_gc_enabled) + * [droneci_autoscaler_image](#droneci_autoscaler_image) + * [droneci_autoscaler_instances](#droneci_autoscaler_instances) + * [droneci_autoscaler_interval](#droneci_autoscaler_interval) + * [droneci_autoscaler_logs_color](#droneci_autoscaler_logs_color) + * [droneci_autoscaler_logs_debug](#droneci_autoscaler_logs_debug) + * [droneci_autoscaler_logs_pretty](#droneci_autoscaler_logs_pretty) + * [droneci_autoscaler_memory_limit](#droneci_autoscaler_memory_limit) + * [droneci_autoscaler_memory_reservation](#droneci_autoscaler_memory_reservation) + * [droneci_autoscaler_networks](#droneci_autoscaler_networks) + * [droneci_autoscaler_networks_applied](#droneci_autoscaler_networks_applied) + * [droneci_autoscaler_pool_max](#droneci_autoscaler_pool_max) + * [droneci_autoscaler_pool_min](#droneci_autoscaler_pool_min) + * [droneci_autoscaler_pool_ttl](#droneci_autoscaler_pool_ttl) + * [droneci_autoscaler_restart_policy](#droneci_autoscaler_restart_policy) + * [droneci_autoscaler_runner_privileged](#droneci_autoscaler_runner_privileged) + * [droneci_autoscaler_runner_volumes](#droneci_autoscaler_runner_volumes) + * [droneci_autoscaler_server_host](#droneci_autoscaler_server_host) + * [droneci_autoscaler_server_proto](#droneci_autoscaler_server_proto) + * [droneci_autoscaler_server_token](#droneci_autoscaler_server_token) + * [droneci_autoscaler_service_directory](#droneci_autoscaler_service_directory) + * [droneci_autoscaler_service_stopped](#droneci_autoscaler_service_stopped) + * [droneci_autoscaler_sshkey](#droneci_autoscaler_sshkey) + * [droneci_autoscaler_version](#droneci_autoscaler_version) + * [droneci_autoscaler_volumes](#droneci_autoscaler_volumes) + * [droneci_autoscaler_watchtower_enabled](#droneci_autoscaler_watchtower_enabled) +* [Dependencies](#dependencies) + +--- + +## Default Variables + +### droneci_autoscaler_agent_architecture + +#### Default value + +```YAML +droneci_autoscaler_agent_architecture: amd64 +``` + +### droneci_autoscaler_agent_concurrency + +#### Default value + +```YAML +droneci_autoscaler_agent_concurrency: 2 +``` + +### droneci_autoscaler_agent_image + +#### Default value + +```YAML +droneci_autoscaler_agent_image: drone/drone-runner-docker:1.5 +``` + +### droneci_autoscaler_agent_os + +#### Default value + +```YAML +droneci_autoscaler_agent_os: linux +``` + +### droneci_autoscaler_agent_package_upgrade + +#### Default value + +```YAML +droneci_autoscaler_agent_package_upgrade: false +``` + +### droneci_autoscaler_agent_token + +#### Default value + +```YAML +droneci_autoscaler_agent_token: myveryownsecret +``` + +### droneci_autoscaler_agent_volumes + +#### Default value + +```YAML +droneci_autoscaler_agent_volumes: [] +``` + +### droneci_autoscaler_db_type + +Database type to use (default sqlite). All other DB variable will ony be used it DB type is **not** sqlite. + +#### Default value + +```YAML +droneci_autoscaler_db_type: sqlite +``` + +### droneci_autoscaler_gc_enabled + +#### Default value + +```YAML +droneci_autoscaler_gc_enabled: false +``` + +### droneci_autoscaler_image + +#### Default value + +```YAML +droneci_autoscaler_image: drone/autoscaler:latest +``` + +### droneci_autoscaler_instances + +#### Default value + +```YAML +droneci_autoscaler_instances: [] +``` + +#### Example usage + +```YAML +droneci_autoscaler_instances: + - name: scaler_amd64 + pool_max: 50 + pool_ttl: 120m + agent_concurrency: 15 + agent_architecture: amd64 + sshkey: "dummy" + provider_config: + - name: DRONE_HETZNERCLOUD_DATACENTER + value: fsn1 + - name: DRONE_HETZNERCLOUD_TOKEN + value: abc123 + - name: DRONE_HETZNERCLOUD_IMAGE + value: ubuntu-18.04 + - name: DRONE_HETZNERCLOUD_TYPE + value: + # SSH key id from hcloud API + - name: DRONE_HETZNERCLOUD_SSHKEY + value: + - name: DRONE_HETZNERCLOUD_USERDATA_FILE + value: /etc/scaler/userdata.yml +``` + +### droneci_autoscaler_interval + +#### Default value + +```YAML +droneci_autoscaler_interval: 1m +``` + +### droneci_autoscaler_logs_color + +#### Default value + +```YAML +droneci_autoscaler_logs_color: false +``` + +### droneci_autoscaler_logs_debug + +#### Default value + +```YAML +droneci_autoscaler_logs_debug: false +``` + +### droneci_autoscaler_logs_pretty + +#### Default value + +```YAML +droneci_autoscaler_logs_pretty: true +``` + +### droneci_autoscaler_memory_limit + +#### Default value + +```YAML +droneci_autoscaler_memory_limit: _unset_ +``` + +#### Example usage + +```YAML +droneci_autoscaler_memory_limit: 512m +``` + +### droneci_autoscaler_memory_reservation + +#### Default value + +```YAML +droneci_autoscaler_memory_reservation: _unset_ +``` + +#### Example usage + +```YAML +droneci_autoscaler_memory_reservation: 256m +``` + +### droneci_autoscaler_networks + +#### Default value + +```YAML +droneci_autoscaler_networks: + - name: droneci_default + external: true +``` + +#### Example usage + +```YAML +droneci_autoscaler_networks: + - name: default + # optional network driver, defaults to 'bride' + driver: host +``` + +### droneci_autoscaler_networks_applied + +#### Default value + +```YAML +droneci_autoscaler_networks_applied: + - droneci_default +``` + +### droneci_autoscaler_pool_max + +#### Default value + +```YAML +droneci_autoscaler_pool_max: 1 +``` + +### droneci_autoscaler_pool_min + +#### Default value + +```YAML +droneci_autoscaler_pool_min: 0 +``` + +### droneci_autoscaler_pool_ttl + +#### Default value + +```YAML +droneci_autoscaler_pool_ttl: 50m +``` + +### droneci_autoscaler_restart_policy + +#### Default value + +```YAML +droneci_autoscaler_restart_policy: always +``` + +### droneci_autoscaler_runner_privileged + +#### Default value + +```YAML +droneci_autoscaler_runner_privileged: [] +``` + +### droneci_autoscaler_runner_volumes + +#### Default value + +```YAML +droneci_autoscaler_runner_volumes: [] +``` + +### droneci_autoscaler_server_host + +#### Default value + +```YAML +droneci_autoscaler_server_host: droneci +``` + +### droneci_autoscaler_server_proto + +#### Default value + +```YAML +droneci_autoscaler_server_proto: http +``` + +### droneci_autoscaler_server_token + +#### Default value + +```YAML +droneci_autoscaler_server_token: myveryownsecret +``` + +### droneci_autoscaler_service_directory + +#### Default value + +```YAML +droneci_autoscaler_service_directory: /var/lib/docker/services/droneci_autoscaler +``` + +### droneci_autoscaler_service_stopped + +#### Default value + +```YAML +droneci_autoscaler_service_stopped: false +``` + +### droneci_autoscaler_sshkey + +SSH private key that will by used by the autoscaler to connect to the agents. If you dont provide a private key, a keypair will be generated automatically. + +#### Default value + +```YAML +droneci_autoscaler_sshkey: _unset_ +``` + +### droneci_autoscaler_version + +#### Default value + +```YAML +droneci_autoscaler_version: latest +``` + +### droneci_autoscaler_volumes + +Define required docker volumes. If you don't use sqlite you could remove the default volume. + +#### Default value + +```YAML +droneci_autoscaler_volumes: + - name: data + dest: /var/lib/drone_autoscaler + bind: false +``` + +#### Example usage + +```YAML +droneci_autoscaler_volumes: + # Instead of the name you could specify a path on the container host system, + # but you also have to enable bind mount for this volume + - name: data + # target location inside the container + dest: /var/lib/drone_autoscaler + # enable bind mount, if false volume will be configured as named volume + # keep in mind you MUST set bind in any case + bind: True +``` + +### droneci_autoscaler_watchtower_enabled + +#### Default value + +```YAML +droneci_autoscaler_watchtower_enabled: false +``` + +## Dependencies + +None.