Variabler med standardværdier (se default/main.yml):
Generelle variabler
nexus_version: ''
nexus_timezone: 'UTC'
Som standard vil rollen installere den seneste tilgængelige version af Nexus. Du kan rette versionen ved at ændre variablen nexus_version. Se tilgængelige versioner på https://www.sonatype.com/download-oss-sonatype.
Hvis du skifter til en nyere version, vil rollen forsøge at opdatere din Nexus-installation.
Hvis du bruger en ældre version af Nexus end den seneste, bør du sikre dig, at du ikke bruger funktioner, der ikke er tilgængelige i den installerede udgivelse (f.eks. er hosting af yum-lagre tilgængelig for nexus større end 3.8.0, git lfs repo for nexus større end 3.3.0 osv.)
nexus timezone er navnet på Java-tidszonen, som kan være nyttig i kombination med følgende cron-udtryk for nexus_scheduled-opgaver.
Porten og kontekststien til Java-forbindelsesprocessen. nexus_default_context_path skal indeholde en skråstreg, når den er indstillet, f.eks.: nexus_default_context_path: '/nexus/'.
Nexus OS bruger og gruppe
nexus_os_group: 'nexus'
nexus_os_user: 'nexus'
Brugeren og gruppen, der bruges til at eje Nexus-filer og køre tjenesten, oprettes af rollen, hvis der mangler en.
nexus_os_user_home_dir: '/home/nexus'
Tillad ændring af standardhjemmebiblioteket for nexus-brugeren
nexus_installation_dir indeholder installerede eksekverbare filer
nexus_data_dir indeholder alle konfigurationer, repositories og downloadede artefakter. Tilpassede blobstore-stier nexus_data_dir kan tilpasses, se nedenfor nexus_blobstores.
nexus_tmp_dir indeholder alle midlertidige filer. Standardstien til redhat er blevet flyttet fra /tmp at overvinde potentielle problemer med automatiske rengøringsprocedurer. Se #168.
Dette er standardindstillingerne for Nexus. Ændr venligst ikke disse værdierHvis du ikke har læst nexus systemkrav hukommelse sektion og forstår ikke hvad de laver.
Som en anden advarsel er her et uddrag fra ovenstående dokument:
Det anbefales ikke at øge JVM-heap-hukommelsen ud over de anbefalede værdier i et forsøg på at forbedre ydeevnen. Dette kan faktisk have den modsatte effekt, hvilket resulterer i unødvendigt arbejde for operativsystemet.
Administratoradgangskode
nexus_admin_password: 'changeme'
"admin"-kontoens adgangskode til opsætning. Dette virker kun på den første standardinstallation. Se venligst [Skift admin-adgangskode efter første installation](# change-admin-password-after-first-install), hvis du vil ændre det senere med en rolle.
Det anbefales kraftigt ikke at gemme din adgangskode som klar tekst i spillebogen, men at bruge [ansible-vault-kryptering] (https://docs.ansible.com/ansible/latest/user_guide/vault.html) (enten inline eller i en separat fil indlæst med f.eks. include_vars)
Anonym adgang som standard
nexus_anonymous_access: false
Anonym adgang er som standard deaktiveret. Læs mere om anonym adgang.
Disse variabler styrer, hvordan rollen opretter forbindelse til Nexus API til klargøring. Kun for avancerede brugere. Du ønsker sandsynligvis ikke at ændre disse standardindstillinger
Indstil SSL omvendt proxy.
For at gøre dette skal du installere httpd. Bemærk: hvornår for httpd_setup_enable indstillet værditrue, nexus-kontakter 127.0.0.1:8081, således nej være direkte tilgængelig via HTTP-port 8081 fra den eksterne IP-adresse.
Det anvendte standardværtsnavn er nexus_public_hostname. Hvis du af en eller anden grund har brug for forskellige navne, kan du indstille httpd_server_name med en anden betydning.
С httpd_copy_ssl_files: true (som standard) skal ovenstående certifikater eksistere i din playbook-mappe og vil blive kopieret til serveren og konfigureret i apache.
Hvis du vil bruge eksisterende certifikater på serveren, skal du installere httpd_copy_ssl_files: false og angiv følgende variable:
# These specifies to the vhost where to find on the remote server file
# system the certificate files.
httpd_ssl_cert_file_location: "/etc/pki/tls/certs/wildcard.vm.crt"
httpd_ssl_cert_key_location: "/etc/pki/tls/private/wildcard.vm.key"
# httpd_ssl_cert_chain_file_location: "{{ httpd_ssl_cert_file_location }}"
httpd_ssl_cert_chain_file_location er valgfri og bør ikke indstilles, hvis du ikke ønsker at tilpasse kædefilen
nexus_privileges:
- name: all-repos-read # used as key to update a privilege
# type: <one of application, repository-admin, repository-content-selector, repository-view, script or wildcard>
description: 'Read & Browse access to all repos'
repository: '*'
actions: # can be add, browse, create, delete, edit, read or * (all)
- read
- browse
# pattern: pattern
# domain: domain
# script_name: name
liste privilegier for indstillinger. Se i dokumentationen og GUI for at kontrollere, hvilke variabler der skal indstilles afhængigt af privilegietypen.
Disse elementer er kombineret med følgende standardværdier:
nexus_roles:
- id: Developpers # can map to a LDAP group id, also used as a key to update a role
name: developers
description: All developers
privileges:
- nx-search-read
- all-repos-read
roles: [] # references to other role names
nexus_local_users: []
# - username: jenkins # used as key to update
# state: present # default value if ommited, use 'absent' to remove user
# first_name: Jenkins
# last_name: CI
# email: [email protected]
# password: "s3cr3t"
# roles:
# - developers # role ID
Liste over lokale (ikke-LDAP) brugere/konti, der skal oprettes i nexus.
Liste over lokale (ikke-LDAP) brugere/konti, der skal oprettes i Nexus.
Ldap kortlægning af brugere/roller. Stat absent vil fjerne roller fra en eksisterende bruger, hvis en allerede eksisterer.
Ldap-brugere slettes ikke. Forsøg på at indstille en rolle for en ikke-eksisterende bruger vil resultere i en fejl.
Indholdsvælgere
nexus_content_selectors:
- name: docker-login
description: Selector for docker login privilege
search_expression: format=="docker" and path=~"/v2/"
For mere information om indholdsvælgeren, se Dokumentation.
For at bruge indholdsvælgeren skal du tilføje et nyt privilegium med type: repository-content-selector og relevantcontentSelector
Slet lagrene fra den oprindelige standardkonfiguration for nexus-installation. Dette trin udføres kun ved førstegangsinstallation (hvornår nexus_data_dir er fundet tom).
Fjernelse af lagre fra standardstandardkonfigurationen for Nexus. Dette trin udføres kun under den første installation (hvornår nexus_data_dir tom).
nexus_delete_default_blobstore: false
Slet standard blobstore fra den oprindelige standardkonfiguration for nexus install. Dette kan kun gøres hvis nexus_delete_default_repos: true og alle konfigurerede repositories (se nedenfor) har en eksplicit blob_store: custom. Dette trin udføres kun ved førstegangsinstallation (hvornår nexus_data_dir er fundet tom).
Fjernelse af blob-lagring (binære artefakter) er deaktiveret som standard fra den oprindelige konfiguration. Sluk for at fjerne klatlagring (binære artefakter). nexus_delete_default_repos: true. Dette trin udføres kun under den første installation (hvornår nexus_data_dir tom).
Blobstores at skabe. En blobstore-sti og en repository-blobstore kan ikke opdateres efter den første oprettelse (enhver opdatering her vil blive ignoreret ved re-provisioning).
Konfiguration af blobstore på S3 er tilvejebragt som en bekvemmelighed og er ikke en del af de automatiske test, vi kører på travis. Bemærk venligst, at lagring på S3 kun anbefales for forekomster implementeret på AWS.
Skabelse Blobstores. Lagerstien og lagerdepotet kan ikke opdateres efter den første oprettelse (enhver opdatering her vil blive ignoreret, når den installeres igen).
Opsætning af blob-opbevaring på S3 er tilvejebragt som en bekvemmelighed. Bemærk venligst, at S3-lagring kun anbefales til forekomster, der er implementeret på AWS.
Ovenfor er et eksempel på konfiguration proxyserver Maven.
nexus_repos_maven_hosted:
- name: private-release
version_policy: release
write_policy: allow_once # one of "allow", "allow_once" or "deny"
Maven hostede depoter konfiguration. Negativ cache-konfiguration er valgfri og vil som standard have ovenstående værdier, hvis den udelades.
Konfiguration hostede depoter Maven. Den negative cache-konfiguration (-1) er valgfri og vil som standard have ovenstående værdier, hvis den ikke er angivet.
nexus_repos_maven_group:
- name: public
member_repos:
- central
- jboss
Alle tre lagertyper er kombineret med følgende standardværdier:
_nexus_repos_maven_defaults:
blob_store: default # Note : cannot be updated once the repo has been created
strict_content_validation: true
version_policy: release # release, snapshot or mixed
layout_policy: strict # strict or permissive
write_policy: allow_once # one of "allow", "allow_once" or "deny"
maximum_component_age: -1 # Nexus gui default. For proxies only
maximum_metadata_age: 1440 # Nexus gui default. For proxies only
negative_cache_enabled: true # Nexus gui default. For proxies only
negative_cache_ttl: 1440 # Nexus gui default. For proxies only
Docker, Pypi, Raw, Rubygems, Bower, NPM, Git-LFS og yum lagertyper:
se defaults/main.yml for disse muligheder:
Docker, Pypi, Raw, Rubygems, Bower, NPM, Git-LFS og yum repositories er deaktiveret som standard:
se defaults/main.yml for disse muligheder:
Bemærk venligst, at du muligvis skal aktivere visse sikkerhedsomfang, hvis du vil bruge andre typer repositories end maven. Dette er som standard falsk
Sikkerhedskopiering vil ikke blive konfigureret, før du skifter nexus_backup_configure в true.
I dette tilfælde vil den planlagte scriptopgave blive konfigureret til at køre på Nexus
med det interval, der er angivet i nexus_backup_cron (standard kl. 21 hver dag).
Se [groovy skabelon til denne opgave](templates/backup.groovy.j2) for detaljer.
Denne planlagte opgave er uafhængig af andre nexus_scheduled_taskssom du
annoncere i din spillebog.
Hvis du vil rotere/slette sikkerhedskopier, skal du installere nexus_backup_rotate: true og konfigurer antallet af sikkerhedskopier, du gerne vil gemme ved hjælp af nexus_backup_keep_rotations (standard 4).
Når du bruger rotation, hvis du vil spare yderligere diskplads under sikkerhedskopieringsprocessen,
Du kan installere nexus_backup_rotate_first: true. Dette vil konfigurere pre-rotation/sletning før backup. Som standard sker rotation, efter at en sikkerhedskopi er oprettet. Bemærk venligst, at i dette tilfælde de gamle sikkerhedskopier
slettes, før den aktuelle sikkerhedskopi laves.
Inddrivelsesprocedure
Kør playbook med parameter -e nexus_restore_point=<YYYY-MM-dd-HH-mm-ss>
(f.eks. 2017-12-17-21-00-00 for 17. december 2017 kl. 21:00
Fjerner nexus
Advarsel: Dette vil helt slette dine nuværende data. Sørg for at lave en sikkerhedskopi tidligere, hvis det er nødvendigt
Brug en variabel nexus_purgehvis du skal genstarte fra bunden og geninstallere nexus-forekomsten med alle data fjernet.
Skift administratoradgangskode efter første installation
nexus_default_admin_password: 'admin123'
Dette bør ikke ændres i din spillebog. Denne variabel er udfyldt med standard Nexus administratoradgangskode, når den første gang installeres og sikrer, at vi kan ændre administratoradgangskoden til nexus_admin_password.
Hvis du vil ændre administratoradgangskoden efter den første installation, kan du midlertidigt ændre den til den gamle adgangskode fra kommandolinjen. Efter ændring nexus_admin_password i din playbook kan du køre: