2018-07-18 15:05:45 +00:00
# drone-ansible
2023-10-30 08:26:27 +00:00
[![Build Status ](https://drone.owncloud.com/api/badges/owncloud-ci/drone-ansible/status.svg )](https://drone.owncloud.com/owncloud-ci/drone-ansible)
2021-06-15 14:03:24 +00:00
[![Docker Hub ](https://img.shields.io/docker/v/owncloudci/drone-ansible?logo=docker&label=dockerhub&sort=semver&logoColor=white )](https://hub.docker.com/r/owncloudci/drone-ansible)
[![GitHub contributors ](https://img.shields.io/github/contributors/owncloud-ci/drone-ansible )](https://github.com/owncloud-ci/drone-ansible/graphs/contributors)
2021-01-29 14:44:10 +00:00
[![Source: GitHub ](https://img.shields.io/badge/source-github-blue.svg?logo=github&logoColor=white )](https://github.com/owncloud-ci/drone-ansible)
2023-10-30 10:40:39 +00:00
[![License: Apache-2.0 ](https://img.shields.io/github/license/owncloud-ci/drone-ansible )](https://github.com/owncloud-ci/drone-ansible/blob/main/LICENSE)
2018-07-18 15:05:45 +00:00
2021-01-26 11:37:19 +00:00
Drone plugin to provision infrastructure with [Ansible ](https://www.ansible.com/ ).
2018-07-18 15:05:45 +00:00
2023-10-30 11:04:48 +00:00
## Versioning
The tags follow the major version of Docker, e.g. `8` , and the minor and patch parts reflect the `version` of the plugin. A full example would be `8.5.2` . Minor versions can introduce breaking changes, while patch versions can be considered non-breaking.
2023-10-30 10:40:39 +00:00
## Usage
```yaml
kind: pipeline
type: docker
name: default
steps:
- name: ansible
image: owncloudci/drone-ansible
settings:
playbook: deployment/playbook.yml
private_key:
from_secret: ansible_private_key
inventory: deployment/hosts.yml
```
2018-07-18 15:05:45 +00:00
## Build
2019-02-15 10:58:31 +00:00
Build the binary with the following command:
2018-07-18 15:05:45 +00:00
2019-02-15 10:58:31 +00:00
```console
2022-04-25 13:54:18 +00:00
make build
2018-07-18 15:05:45 +00:00
```
2019-02-15 10:58:31 +00:00
Build the Docker image with the following command:
2018-07-18 15:05:45 +00:00
2019-02-15 10:58:31 +00:00
```console
2023-10-30 10:40:39 +00:00
docker build --file Dockerfile.multiarch --tag owncloudci/drone-ansible .
2018-07-18 15:05:45 +00:00
```
2023-10-30 10:40:39 +00:00
## Test
2018-07-18 15:05:45 +00:00
2019-02-15 10:58:31 +00:00
```console
2018-07-18 15:05:45 +00:00
docker run --rm \
-e PLUGIN_PRIVATE_KEY="$(cat ~/.ssh/id_rsa)" \
-e PLUGIN_PLAYBOOK="deployment/playbook.yml" \
-e PLUGIN_INVENTORY="deployment/hosts.yml" \
-v $(pwd):$(pwd) \
-w $(pwd) \
2023-10-30 10:40:39 +00:00
owncloudci/drone-ansible --dry-run
2018-07-18 15:05:45 +00:00
```
2021-01-26 11:37:19 +00:00
2021-02-09 12:52:46 +00:00
## Releases
2023-10-30 10:40:39 +00:00
Create and push the new tag to trigger the CI release process:
2021-02-09 12:52:46 +00:00
2023-10-30 10:40:39 +00:00
```console
2021-02-09 12:52:46 +00:00
git tag v2.10.3
git push origin v2.10.3
```
2021-01-26 11:37:19 +00:00
## License
2023-10-30 10:40:39 +00:00
This project is licensed under the Apache 2.0 License - see the [LICENSE ](https://github.com/owncloud-ci/drone-ansible/blob/main/LICENSE ) file for details.
2021-06-15 14:03:24 +00:00
## Copyright
2023-10-30 10:40:39 +00:00
```text
2021-12-21 11:05:56 +00:00
Copyright (c) 2022 ownCloud GmbH
2021-06-15 14:03:24 +00:00
```