Skip to content
Access artifacts in maven repo with ansible
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
Dockerfile
LICENSE
README.md
mvn.yml
site.yml

README.md

ansible-maven-repo

Download artifacts from Maven repositories with Ansible.

Prerequisites

Install JDK and Maven using existing Ansible modules

ansible-galaxy install geerlingguy.java
ansible-galaxy install https://github.com/silpion/ansible-maven.git
- hosts: localhost

  roles:
    - { role: ansible-maven }
    - { role: geerlingguy.java }

  vars:
    java_packages:
      - java-1.7.0-openjdk

Example

From mvn.yml, download any number of Maven artifacts optionally from different repositories

- hosts: localhost

  vars:
    mvn_artifacts:
      - id: org.apache.maven:maven-core:2.2.1:jar:sources
        dest: /tmp/test.jar
        # params: -U # update snapshots
        # repos:
          # - http://repo1.maven.apache.org/maven2
      
  tasks:
    - name: copy maven artifacts
      command: mvn {{ item.params | default('') }} org.apache.maven.plugins:maven-dependency-plugin:get -Dartifact={{ item.id }} -Ddest={{ item.dest }} -Dtransitive=false -Pansible-maven -DremoteRepositories={{ item.repos | default(['http://repo1.maven.apache.org/maven2']) | join(",") }}
      with_items: mvn_artifacts

Docker

An image with Ansible, JDK and Maven preinstalled is available at csanchez/ansible-maven.

Building Docker image

docker build -t csanchez/ansible-maven .
You can’t perform that action at this time.