Files
JFrog-Cloud-Installers/Ansible/artifactory7/README.md
2020-04-28 21:08:09 -07:00

2.3 KiB

rt7ansible

This repo contains the Ansible collection for JFrog Artifactory Pro 7 roles. These roles allow you to provision Artifactory for High-Availability using a Primary node and multiple Secondary nodes. Additionally, a Postgresql role is provided for installing an Artifactory Postgresql database.

Roles Provided

artifactory

The artifactory role installs the Artifactory Pro software onto the host. Per the Vars below, it will configure a node as primary or secondary. This role uses secondary roles artifactory-nginx and artifactory-java to install nginx and java dependencies.

artifactory-nginx-ssl

The artifactory-nginx-ssl role installs and configures nginx for SSL.

artifactory-postgres

The artifactory-postgres role will install Postgresql software and configure an artifactory database and user.

Vars Required

The following Vars must be configured.

all

  • ansible_user: The SSH user to access the hosts. eg. "ubuntu"
  • ansible_ssh_private_key_file: The SSH key to use. eg. "/Users/jefff/.ssh/jeff-ec2-us-east.pem"
  • db_user: The Artifactory database user to configure. eg. "artifactory"
  • db_password: The Artifactory database password to configure. "Art1fact0ry"
  • server_name: This is the server name. eg. "artifactory.54.175.51.178.xip.io"

artifactory

  • master_key: This is the Artifactory Master Key.
  • join_key: This is the Artifactory Join Key.
  • db_download_url: This is the download URL for the JDBC driver for your database. eg. "https://jdbc.postgresql.org/download/postgresql-42.2.12.jar"
  • db_type: This is the database type. eg. "postgresql"
  • db_driver: This is the JDBC driver class. eg. "org.postgresql.Driver"
  • db_url: This is the JDBC database url. eg. "jdbc:postgresql://10.0.0.120:5432/artifactory"

primary

  • artifactory_is_primary: For the primary node this must be set to true.
  • artifactory_license1 - 5: These are the cluster licenses.

secondary

  • artifactory_is_primary: For the secondary node(s) this must be set to false.

SSL Config (Used with artifactory-nginx-ssl role)

  • certificate: This is the SSL cert.
  • certificate_key: This is the SSL private key.

Example Inventory YAML

An example inventory YAM is here.

Example Playbook

An playbook is here.

Executing a Playbook

ansible-playbook -i hosts.yml rt7provision.yml