mirror of
https://github.com/ZwareBear/JFrog-Cloud-Installers.git
synced 2026-01-21 16:06:57 -06:00
Checking in code for rt 7.17.4 version
This commit is contained in:
@@ -0,0 +1,43 @@
|
||||
- name: set license for Enterprise
|
||||
block:
|
||||
- name: use license file
|
||||
copy:
|
||||
src: "{{ artifactory_license_file }}"
|
||||
dest: "{{ artifactory_home }}/var/etc/artifactory/artifactory.cluster.license"
|
||||
force: no # only copy if file doesn't exist
|
||||
become: yes
|
||||
when: artifactory_license_file is defined and artifactory_is_primary == true
|
||||
|
||||
- name: use license strings
|
||||
vars:
|
||||
artifactory_licenses_dict: "{{ artifactory_licenses | default('{}') }}"
|
||||
|
||||
template:
|
||||
src: artifactory.cluster.license.j2
|
||||
dest: "{{ artifactory_home }}/var/etc/artifactory/artifactory.cluster.license"
|
||||
force: no # only create if file doesn't exist
|
||||
become: yes
|
||||
when: artifactory_license_file is not defined and artifactory_is_primary == true
|
||||
when: artifactory_ha_enabled
|
||||
|
||||
- name: set license for Pro
|
||||
block:
|
||||
- name: use license file
|
||||
copy:
|
||||
src: "{{ artifactory_license_file }}"
|
||||
dest: "{{ artifactory_home }}/var/etc/artifactory/artifactory.lic"
|
||||
force: no # only create if file doesn't exist
|
||||
become: yes
|
||||
when: artifactory_license_file is defined
|
||||
|
||||
- name: use license strings
|
||||
vars:
|
||||
artifactory_licenses_dict: "{{ artifactory_licenses | default('{}') }}"
|
||||
|
||||
template:
|
||||
src: artifactory.pro.license.j2
|
||||
dest: "{{ artifactory_home }}/var/etc/artifactory/artifactory.lic"
|
||||
force: no # only create if file doesn't exist
|
||||
become: yes
|
||||
when: artifactory_license_file is not defined
|
||||
when: not artifactory_ha_enabled
|
||||
@@ -0,0 +1,44 @@
|
||||
- name: setup directory symlink for using custom data directory/volume
|
||||
block:
|
||||
- name: Create a xfs filesystem on /dev/nvme1n1
|
||||
# First non-root device is always mapped to /dev/nvme1n1
|
||||
# See: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nvme-ebs-volumes.html
|
||||
community.general.filesystem:
|
||||
dev: /dev/nvme1n1
|
||||
fstype: xfs
|
||||
|
||||
- name: ensure external data directory exists
|
||||
file:
|
||||
path: "{{ custom_data_directory }}"
|
||||
state: directory
|
||||
|
||||
- name: Mount the EBS volume
|
||||
ansible.posix.mount:
|
||||
path: "{{ custom_data_directory }}"
|
||||
src: /dev/nvme1n1
|
||||
state: mounted
|
||||
fstype: xfs
|
||||
|
||||
- name: set custom data directory permission
|
||||
file:
|
||||
path: "{{ custom_data_directory }}"
|
||||
state: directory
|
||||
recurse: yes
|
||||
owner: "{{ artifactory_user }}"
|
||||
group: "{{ artifactory_group }}"
|
||||
mode: "u=rwX,g=rwX,o=rwX"
|
||||
|
||||
- name: remove var directory if exists
|
||||
file:
|
||||
path: "{{ artifactory_home }}/var"
|
||||
state: absent
|
||||
|
||||
- name: symlink custom data directory to var
|
||||
file:
|
||||
src: "{{ custom_data_directory }}"
|
||||
path: "{{ artifactory_home }}/var"
|
||||
state: link
|
||||
owner: "{{ artifactory_user }}"
|
||||
group: "{{ artifactory_group }}"
|
||||
become: yes
|
||||
when: use_custom_data_directory and custom_data_directory is defined
|
||||
@@ -0,0 +1,132 @@
|
||||
---
|
||||
# tasks file for artifactory
|
||||
- name: Set artifactory major version
|
||||
set_fact:
|
||||
artifactory_major_verion: "{{ artifactory_version.split('.')[0] }}"
|
||||
|
||||
- name: create group for artifactory
|
||||
group:
|
||||
name: "{{ artifactory_group }}"
|
||||
state: present
|
||||
become: yes
|
||||
|
||||
- name: create user for artifactory
|
||||
user:
|
||||
name: "{{ artifactory_user }}"
|
||||
group: "{{ artifactory_group }}"
|
||||
system: yes
|
||||
become: yes
|
||||
|
||||
- name: ensure artifactory_download_directory exists
|
||||
file:
|
||||
path: "{{ artifactory_download_directory }}"
|
||||
state: directory
|
||||
become: yes
|
||||
|
||||
- name: ensure artifactory_file_store_dir exists
|
||||
file:
|
||||
path: "{{ artifactory_file_store_dir }}"
|
||||
state: directory
|
||||
owner: "{{ artifactory_user }}"
|
||||
group: "{{ artifactory_group }}"
|
||||
become: yes
|
||||
|
||||
- name: setup directory symlink for using custom data directory/volume
|
||||
include_tasks: custom-data-directory.yml
|
||||
when: use_custom_data_directory and custom_data_directory is defined
|
||||
|
||||
- name: ensure data subdirectories exist and have correct ownership
|
||||
file:
|
||||
path: "{{ artifactory_home }}/var/{{ item }}"
|
||||
state: directory
|
||||
owner: "{{ artifactory_user }}"
|
||||
group: "{{ artifactory_group }}"
|
||||
loop:
|
||||
- "bootstrap"
|
||||
- "etc"
|
||||
- "data"
|
||||
- "etc/info"
|
||||
- "etc/security"
|
||||
- "etc/artifactory"
|
||||
become: yes
|
||||
|
||||
- name: check if system yaml file exits
|
||||
stat:
|
||||
path: "{{ artifactory_home }}/var/etc/system.yaml"
|
||||
register: system_yaml
|
||||
|
||||
- name: use specified system yaml
|
||||
copy:
|
||||
src: "{{ system_file }}"
|
||||
dest: "{{ artifactory_home }}/var/etc/system.yaml"
|
||||
become: yes
|
||||
when: system_file is defined and not system_yaml.stat.exists
|
||||
|
||||
- name: configure system yaml
|
||||
template:
|
||||
src: system.yaml.j2
|
||||
dest: "{{ artifactory_home }}/var/etc/system.yaml"
|
||||
become: yes
|
||||
when: system_file is not defined and not system_yaml.stat.exists
|
||||
|
||||
- name: configure master key
|
||||
template:
|
||||
src: master.key.j2
|
||||
dest: "{{ artifactory_home }}/var/etc/security/master.key"
|
||||
force: no # only create if file doesn't exist
|
||||
become: yes
|
||||
|
||||
- name: configure join key
|
||||
template:
|
||||
src: join.key.j2
|
||||
dest: "{{ artifactory_home }}/var/etc/security/join.key"
|
||||
force: no # only create if file doesn't exist
|
||||
become: yes
|
||||
|
||||
- name: configure installer info
|
||||
template:
|
||||
src: installer-info.json.j2
|
||||
dest: "{{ artifactory_home }}/var/etc/info/installer-info.json"
|
||||
become: yes
|
||||
|
||||
- name: use specified binary store file
|
||||
copy:
|
||||
src: "{{ binary_store_file }}"
|
||||
dest: "{{ artifactory_home }}/var/etc/artifactory/binarystore.xml"
|
||||
force: no # only copy if file doesn't exist
|
||||
become: yes
|
||||
when: binary_store_file is defined
|
||||
|
||||
- name: set default binary store
|
||||
template:
|
||||
src: binarystore.xml.j2
|
||||
dest: "{{ artifactory_home }}/var/etc/artifactory/binarystore.xml"
|
||||
force: no # only create if file doesn't exist
|
||||
become: yes
|
||||
when: binary_store_file is not defined
|
||||
|
||||
- name: configure licenses
|
||||
include_tasks: configure-licenses.yml
|
||||
|
||||
- name: create artifactory service
|
||||
shell: "{{ artifactory_home }}/app/bin/installService.sh"
|
||||
become: yes
|
||||
|
||||
- name: start and enable the primary node
|
||||
service:
|
||||
name: artifactory
|
||||
state: restarted
|
||||
become: yes
|
||||
when: artifactory_is_primary == true
|
||||
|
||||
- name: random wait before restarting to prevent secondary nodes from hitting DB first
|
||||
pause:
|
||||
seconds: "{{ 120 | random + 10}}"
|
||||
when: artifactory_is_primary == false
|
||||
|
||||
- name: start and enable the secondary nodes
|
||||
service:
|
||||
name: artifactory
|
||||
state: restarted
|
||||
become: yes
|
||||
when: artifactory_is_primary == false
|
||||
Reference in New Issue
Block a user