Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
98b5999
adding copyright main.yml
jt14den Jul 19, 2024
d0148d7
update default settings
jmjamison Jul 26, 2024
3c91efb
updating url
jt14den Sep 12, 2024
3002398
Update README.md
jt14den Sep 12, 2024
db93479
Merge branch 'gdcc:develop' into develop
jt14den Sep 18, 2024
f147d24
adding rocky9 molecule scenario
jt14den Oct 24, 2024
4d00478
moelecule and task changes
jt14den Nov 6, 2024
e637fe6
Create ucla_readme.md
jt14den Nov 20, 2024
d917034
Resolve merge conflict in tasks/dataverse-prereqs.yml
jt14den Dec 17, 2024
cf990da
Merge branch 'gdcc-develop' into develop
jt14den Dec 17, 2024
1c5fe06
community.docker.docker_compose to community.docker.docker_compose_v2…
jmjamison Dec 19, 2024
4bb1c74
Update ucla_readme.md
jmjamison Jan 9, 2025
72b794c
Merge remote-tracking branch 'upstream/develop' into develop
jt14den Jul 25, 2025
c308eb5
Add conditional GUI branding tasks and API settings for Dataverse
jt14den Jul 27, 2025
26d1fb5
Switch Payara ZIP URL and checksum to use vars from group_vars
jt14den Jul 27, 2025
38eaa64
Revise README with improved local setup and Molecule instructions
jt14den Jul 27, 2025
495ac19
Add Conda environment file for local development
jt14den Jul 27, 2025
b90e2f0
Update ucla_readme.md
jt14den Jul 28, 2025
b9e1d4b
Update ucla_readme.md
jt14den Jul 28, 2025
cae5bed
Update ucla_readme.md
jt14den Jul 28, 2025
c46c577
Use for GUI branding paths
jt14den Jul 29, 2025
d2a273f
Merge pull request #24 from ucla-data-science-center/fix/gui-branding
jt14den Jul 29, 2025
9982b2d
changed -AARCH64 to x86 in postgres_redhat.yml, section install post…
Jul 30, 2025
2da72af
change postgres_redhat.yml, around line 11, change -aarch64 to {{ an…
Jul 30, 2025
aa279b8
Revert "change postgres_redhat.yml, around line 11, change -aarch64 …
jmjamison Jul 30, 2025
1f6e074
change hardcoded system architecture - postgres_redhat.yml, around li…
jmjamison Jul 30, 2025
1d139cc
Merge pull request #26 from ucla-data-science-center/fix-architecture…
jmjamison Jul 30, 2025
7da8fd8
Merge branch 'gdcc:develop' into develop
jt14den Aug 1, 2025
da6db90
WIP: local edits before pip-tools setup
jt14den Aug 2, 2025
d06aa93
Add pip-tools setup and update environment.yml
jt14den Aug 2, 2025
aae1659
WIP: local edits before pip-tools setup
jt14den Aug 2, 2025
1825541
remove weird file {changed:
jmjamison Aug 4, 2025
63c57c1
Merge pull request #27 from ucla-data-science-center/pip-tools-setup
jt14den Aug 4, 2025
f5c23cc
Remove ucla_readme note about WIndows WSL2 variables.
jmjamison Aug 6, 2025
b448ea0
attempt to fix jvm email variable problem, tasks/dataverse-settings.yml
jmjamison Aug 6, 2025
2b76556
fix jvm-email error by adding group_vars/all.yml
jmjamison Aug 13, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 34 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,37 @@ venv
.vagrant/
/.idea
/*.iml
inventory_ec2
.DS_Store


### ucla local

# Conda environment artifacts
.env/
.venv/
conda-meta/
*.conda
*.egg-info/

# Python bytecode
__pycache__/
*.py[cod]
*.pyo

# Pip-tools generated lockfile (optional to ignore)
# If you want reproducibility, keep this file checked in.
# If you want to force all devs to recompile, uncomment below:
# requirements.txt

# pip-sync temporary install log
pip-log.txt

# Molecule test artifacts
.molecule/
*.retry
*.log

# VSCode & Editor configs
.vscode/
.idea/
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ The role installs Apache, PostgreSQL, GlassFish/Payara and other prerequisites,

Running the following commands as root should install the latest released version of Dataverse.

$ git clone https://github.com/GlobalDataverseCommunityConsortium/dataverse-ansible.git dataverse
$ git clone https://github.com/ucla-data-science-center/dataverse-ansible.git dataverse
$ ansible-playbook --connection=local -v -i dataverse/inventory dataverse/dataverse.pb -e "@dataverse/defaults/main.yml"

Recent, specific versions of Dataverse (namely, 4.20 and 5.0) may be installed using branches tagged with that version.
Expand Down Expand Up @@ -89,8 +89,8 @@ It is possible to run certain portions of the playbook to avoid running the enti
**Note:** While Ansible in general strives to achieve role idempotence, the dataverse-ansible role is merely a wrapper for the Dataverse installer, which itself is not idempotent. If you strongly desire that the role be idempotent and would like achieve this via semaphores, pull requests are welcome!

### To test using Vagrant:
$ git clone https://github.com/GlobalDataverseCommunityConsortium/dataverse-ansible
$ cd dataverse-ansible
$ git clone https://github.com/ucla-data-science-center/dataverse-ansible.git ucla-dataverse
$ cd ucla-dataverse
$ vagrant up

On successful completion of the Vagrant run, you should be able to log in to your test Dataverse as dataverseAdmin using the dataverse_adminpass from tests/group_vars/vagrant.yml using the address:
Expand Down
22 changes: 15 additions & 7 deletions Vagrantfile
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,9 @@
VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.box = "bento/rockylinux-9"

#config.vm.box = "bento/rockylinux-9"
config.vm.box = "bento/rockylinux-9-arm64"

config.vm.synced_folder ".", "/vagrant"
config.vm.synced_folder ".", "/etc/ansible/roles/dataverse"

Expand All @@ -20,7 +21,7 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.network :forwarded_port, guest: 9090, host: 9090, auto_correct: true # Prometheus

config.vm.provision :ansible_local do |ansible|
ansible.playbook = "tests/site.yml"
ansible.playbook = "site.yml"
ansible.groups = {
"dataverse" => %(default),
"db" => %(default),
Expand All @@ -34,8 +35,15 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
ansible.verbose = true
end

config.vm.provider "virtualbox" do |vbox|
vbox.cpus = 4
vbox.memory = 8192
config.vm.provider "vmware_desktop" do |vmware|
vmware.vmx["tools.upgrade.policy"] = "manual"
vmware.gui = false
vmware.ssh_info_public = true
vmware.allowlist_verified = true
vmware.linked_clone = false
vmware.vmx["ethernet0.virtualdev"] = "vmxnet3"
vmware.vmx["ethernet1.virtualdev"] = "vmxnet3"
vmware.vmx["memsize"] = "8192"
vmware.vmx["numvcpus"] = "4"
end
end
end
35 changes: 18 additions & 17 deletions defaults/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ dataverse_repo: https://github.com/IQSS/dataverse.git
# dataverse_installer_url: https://example.com/path/to/dvinstall.zip

# set this to true for troubleshooting
any_errors_fatal: false
#any_errors_fatal: true

apache:
enabled: true
Expand Down Expand Up @@ -51,17 +51,17 @@ dataverse:
adminpass: admin1
allow_signups: true
api:
allow_lookup: false
blocked_endpoints: "admin,builtin-users,test"
blocked_policy: "localhost-only"
allow_lookup: true
blocked_endpoints: "builtin-users,test"
blocked_policy: ""
location: "http://localhost:8080/api"
test_suite: false
# possible test values from https://github.com/IQSS/dataverse/blob/develop/conf/docker-aio/run-test-suite.sh#L11
# beware DataversesIT and DatasetsIT at minimum must be run for any other tests to succeed. have fun.
#tests: "DataversesIT,DatasetsIT,AdminIT"
tests: default
branding:
enabled: false
enabled: true
directory: "{{ playbook_dir }}/files/branding"
favicons_directory: "{{ playbook_dir }}/files/favicons"
fileSettings:
Expand All @@ -70,23 +70,23 @@ dataverse:
- setting: StyleCustomizationFile
file: custom-stylesheet.css
- setting: LogoCustomizationFile
file: topbanner001w425_darkbg.png'
file: dataverseUCLA_logo.png
otherSettings:
- setting: FooterCopyright
value: Your institute name here
value: " UC Regents"
language:
enabled: false # setting this to true allows the language task to run
enabled: true # setting this to true allows the language task to run
languages:
- locale: en_US
title: English
- locale: de_DE
title: Deutsch
- locale: de_ES
title: Spanish
language_packs:
source: https://github.com/GlobalDataverseCommunityConsortium/dataverse-language-packs.git
version: develop
lang_directory: "{{ dataverse_misc_files_dir }}/lang"
licenses:
enabled: false
enabled: true
user: dataverseAdmin
licenses:
- name: CC0 1.0
Expand Down Expand Up @@ -131,9 +131,9 @@ dataverse:
iconUrl: https://licensebuttons.net/l/by-sa/4.0/88x31.png
active: true
sortOrder: 7
copyright: "Your Institution"
copyright: "UC Regents"
counter:
enabled: false
enabled: true
#geoipdir: maxmind_geoip
#geoipfile: GeoLite2-Country.mmdb
hub_api_token: set_me_in_secrets
Expand All @@ -149,7 +149,7 @@ dataverse:
user: counter
year_month: "2018-05"
custom_metadata_blocks:
enabled: false
enabled: true
urls:
- https://github.com/IQSS/dataverse/files/3744336/codemeta.tsv.txt
default:
Expand Down Expand Up @@ -247,7 +247,7 @@ dataverse:
custom_sampledataverses: "{{ playbook_dir }}/custom_sampledata/dataverses"
custom_sampleusers: "{{ playbook_dir }}/custom_sampledata/users"
custom_samplefiles: "{{ playbook_dir }}/custom_sampledata/files"
service_email: noreply@dataverse.yourinstitution.edu
service_email: noreply@dataverse.ucla.edu
smtp: localhost # or the FQDN of your organization's SMTP relay
solr:
download_url: https://archive.apache.org/dist/solr/solr/9.8.0/solr-9.8.0.tgz
Expand Down Expand Up @@ -327,7 +327,7 @@ localstack:
web_ui: 8888
buckets:
- label: LocalStack
id: localstack1
id: loalstack1
bucket_name: mybucket
enabled: false
access_key: 4cc355_k3y
Expand Down Expand Up @@ -416,7 +416,8 @@ s3:
label: s3-test
# for localstack this must be true
path_style_access: true
region: us-east-1
region: us-west-2
location_constraint: us-west-2
storage_driver_id: s3
url_expiration_minutes: 60
payload_signing: false
Expand Down
7 changes: 7 additions & 0 deletions environment.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: dataverse-ansible
channels:
- conda-forge
dependencies:
- python=3.11
- pip
- pip-tools
35 changes: 35 additions & 0 deletions files/branding/custom-header.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
<style>
/* NOTE: You can use the custom CSS configuration to move this CSS your own stylesheet... */

/* Overwrite default navbar styles to make room at the top of the browser page for our custom header... */
.navbar-fixed-top {
top:50px !important;
}
#dataverse-header-block {
padding-top: 100px;
}

/* Place narrow custom header at the top of the page... */
#custom-header {
background: #414141;
min-height: 44px;
position: fixed;
right: 0;
left: 0;
z-index: 930;
padding-top: 8px;
}
#custom-header a.cst-hdr-link {
line-height: 32px;
color: #BAC5C6;
font-weight: bold;
}
</style>
<div id="custom-header">
<div class="container">
<p class="text-right">
<a class="pull-left" href="https://dataverse.org" title="SAMPLE IMAGE LINK" target="_blank"><img src="/var/www/dataverse/branding/sample.png" alt="SAMPLE IMAGE"/></a>
<a class="cst-hdr-link" href="https://dataverse.org" title="SAMPLE HEADER LINK" target="_blank">SAMPLE HEADER LINK</a>
</p>
</div>
</div>
Binary file added files/branding/dataverseUCLA_logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added files/branding/dataverseUCLA_logo2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 2 additions & 0 deletions group_vars/all.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
dataverse_system_email: "[email protected]"

2 changes: 1 addition & 1 deletion inventory
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
[dataverse]
localhost
rocky9 ansible_connection=docker
2 changes: 2 additions & 0 deletions meta/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,3 +11,5 @@ galaxy_info:
- 7
galaxy_tags:
- dataverse
role_name: dataverse
namespace: ucla-data-science-center
3 changes: 3 additions & 0 deletions molecule/rocky9/Dockerfile.j2
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
FROM rockylinux:9
RUN yum install -y sudo systemd systemd-sysv postfix
CMD ["/usr/sbin/init"]
8 changes: 8 additions & 0 deletions molecule/rocky9/converge.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
- name: Converge
hosts: all
gather_facts: false
tasks:
- name: Replace this task with one that validates your content
ansible.builtin.debug:
msg: "This is the effective test"
34 changes: 34 additions & 0 deletions molecule/rocky9/molecule.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
---
dependency:
name: galaxy
driver:
name: docker
platforms:
- name: rocky9
image: eniocarboni/docker-rockylinux-systemd:latest
pre_build_image: true
privileged: true
command: /usr/sbin/init
groups:
- dataverse
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:rw
- /var/lib/containerd
cgroupns_mode: host
published_ports:
- "8080:8080"
# gpt lies!
# ports:
# - "8080:8080"
provisioner:
name: ansible
log: true # Enable logging
config_options:
defaults:
log_path: ./ansible-output.log # Path where the log will be saved
roles_path:
- ..
playbooks:
converge: ../../site.yml
verifier:
name: testinfra
4 changes: 4 additions & 0 deletions requirements.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
ansible-core
molecule
molecule-docker
docker
Loading