--- - name: List configured runners command: gitlab-runner list register: configured_runners changed_when: False check_mode: no - name: Register runner to GitLab command: gitlab-runner register > --non-interactive --url '{{ gitlab_runner_coordinator_url }}' --registration-token '{{ item.token | default( gitlab_runner_registration_token ) }}' --description '{{ item.description }}' --tag-list '{{ ( item.tags | default( gitlab_runner_tags ) ) | join(",") }}' --executor '{{ gitlab_runner_executor }}' --limit '{{ gitlab_runner_concurrent_specific }}' --locked='{{ item.locked | default( gitlab_runner_locked ) }}' --docker-image '{{ gitlab_runner_docker_image }}' {% if gitlab_runner_docker_volumes is defined %} --docker-volumes "{{ gitlab_runner_docker_volumes | join('" "') }}" {% endif %} --ssh-user '{{ gitlab_runner_ssh_user }}' --ssh-host '{{ gitlab_runner_ssh_host }}' --ssh-port '{{ gitlab_runner_ssh_port }}' --ssh-password '{{ gitlab_runner_ssh_password }}' --ssh-identity-file '{{ gitlab_runner_ssh_identity_file }}' {% if gitlab_runner_cache_type is defined %} --cache-type '{{ gitlab_runner_cache_type }}' --cache-s3-server-address '{{ gitlab_runner_cache_s3_server_address }}' --cache-s3-access-key '{{ gitlab_runner_cache_s3_access_key }}' --cache-s3-secret-key '{{ gitlab_runner_cache_s3_secret_key }}' --cache-s3-bucket-name '{{ gitlab_runner_cache_s3_bucket_name }}' --cache-s3-insecure='{{ gitlab_runner_cache_s3_insecure }}' --cache-cache-shared='{{ gitlab_runner_cache_cache_shared }}' {% endif %} --machine-idle-nodes '{{ gitlab_runner_machine_idle_nodes }}' --machine-idle-time '{{ gitlab_runner_machine_idle_time }}' --machine-machine-driver 'digitalocean' --machine-machine-name 'gitlab-%s' --machine-machine-options 'digitalocean-image=coreos-stable' --machine-machine-options 'digitalocean-ssh-user=core' --machine-machine-options 'digitalocean-access-token={{ gitlab_runner_digital_ocean_token }}' --machine-machine-options 'digitalocean-region={{ gitlab_runner_digital_ocean_region }}' --machine-machine-options 'digitalocean-size={{ gitlab_runner_digital_ocean_size }}' --machine-machine-options 'digitalocean-private-networking' --machine-machine-options 'digitalocean-ipv6' with_items: '{{ gitlab_runners }}' when: configured_runners.stderr.find('\n' + item.description) == -1