wp-ansible
Woodpecker CI plugin to manage infrastructure with Ansible.
steps:
  - name: ansible
    image: quay.io/thegeeklab/wp-ansible
    settings:
      playbook: deployment/playbook.yml
      private_key:
        from_secret: ansible_private_key
      inventory: deployment/hosts.yml
      syntax_check: true
                    - 
                            Enable privilege escalation.Default: false
 - 
                            Privilege escalation method to use.Default: none
 - 
                            Privilege escalation user to use.Default: none
 - 
                            Run a check, do not apply any changes.Default: false
 - 
                            Connection type to use.Default: none
 - 
                            Show the differences. Be careful when using it in public CI environments as it can print secrets.Default: false
 - 
                            Set additional variables as
key=value.Default: none - 
                            Clear the fact cache for every host in inventory.Default: false
 - 
                            Run handlers even if a task fails.Default: false
 - 
                            Specify number of parallel processes to use.Default: 5
 - 
                            Path to galaxy requirements file.Default: none
 - 
                            Skip SSL verification.Default: false
 - 
                            Path to inventory file.Default: none
 - 
                            Limit selected hosts to an additional pattern.Default: none
 - 
                            Outputs a list of matching hosts.Default: false
 - 
                            List all available tags.Default: false
 - 
                            List all tasks that would be executed.Default: false
 - 
                            Plugin log level.Default: info
 - 
                            Prepend paths to module library.Default: none
 - 
                            List of playbooks to apply.Default: none
 - 
                            SSH private key used to authenticate the connection.Default: none
 - 
                            Path to python requirements file.Default: none
 - 
                            Specify extra arguments to pass to SCP connections only.Default: none
 - 
                            Specify extra arguments to pass to SFTP connections only.Default: none
 - 
                            Only run plays and tasks whose tags do not match.Default: none
 - 
                            Specify common arguments to pass to SFTP, SCP and SSH connections.Default: none
 - 
                            Specify extra arguments to pass to SSH connections only.Default: none
 - 
                            Start the playbook at the task matching this name.Default: none
 - 
                            Perform a syntax check on the playbook.Default: false
 - 
                            Only run plays and tasks tagged with these values.Default: none
 - 
                            Override the connection timeout in seconds.Default: 0
 - 
                            Connect as this user.Default: none
 - 
                            The vault identity to use.Default: none
 - 
                            The vault password to use.Default: none
 - 
                            Level of verbosity, 0 up to 4.Default: 0
 
Build the binary with the following command:
make build
                    Build the Container image with the following command:
docker build --file Containerfile.multiarch --tag thegeeklab/wp-ansible .
                    docker run --rm \
  -e PLUGIN_PLAYBOOK=playbook.yml \
  -e PLUGIN_INVENTORY=inventory.yml \
  -e PLUGIN_SYNTAX_CHECK=true \
  -v $(pwd)/testdata:/build:z \
  -w /build \
  thegeeklab/wp-ansible