You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
66 lines
2.0 KiB
66 lines
2.0 KiB
--- |
|
# Copyright 2019 Red Hat, Inc. |
|
# All Rights Reserved. |
|
# |
|
# Licensed under the Apache License, Version 2.0 (the "License"); you may |
|
# not use this file except in compliance with the License. You may obtain |
|
# a copy of the License at |
|
# |
|
# http://www.apache.org/licenses/LICENSE-2.0 |
|
# |
|
# Unless required by applicable law or agreed to in writing, software |
|
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT |
|
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the |
|
# License for the specific language governing permissions and limitations |
|
# under the License. |
|
|
|
|
|
- name: pre prepare |
|
hosts: all |
|
gather_facts: false |
|
tasks: |
|
- name: set basic user fact |
|
fail: |
|
msg: >- |
|
The variable `ansible_user` set this option and try again. On the |
|
CLI this can be defined with "-e ansible_user=${USER}" |
|
when: |
|
- ansible_user is undefined |
|
|
|
- name: set basic home fact |
|
fail: |
|
msg: >- |
|
The variable `ansible_user_dir` set this option and try again. On |
|
the CLI this can be defined with "-e ansible_user_dir=${HOME}" |
|
when: |
|
- ansible_user_dir is undefined |
|
|
|
- name: Ensure the user has a .ssh directory |
|
file: |
|
path: "{{ ansible_user_dir }}/.ssh" |
|
state: directory |
|
owner: "{{ ansible_user }}" |
|
group: "{{ ansible_user }}" |
|
mode: "0700" |
|
|
|
- name: Create ssh key pair |
|
openssh_keypair: |
|
path: "{{ ansible_user_dir }}/.ssh/id_rsa" |
|
size: 2048 |
|
|
|
- name: Slurp pub key |
|
slurp: |
|
src: "{{ ansible_user_dir ~ '/.ssh/id_rsa.pub' }}" |
|
register: pub_key |
|
|
|
- name: Ensure can ssh to can connect to localhost |
|
authorized_key: |
|
user: "{{ ansible_user }}" |
|
key: "{{ pub_key['content'] | b64decode }}" |
|
|
|
- name: Get the zuul/zuul-jobs repo |
|
git: |
|
repo: https://opendev.org/zuul/zuul-jobs |
|
dest: "{{ ansible_user_dir }}/zuul-jobs" |
|
version: master |
|
force: true
|
|
|