-
Notifications
You must be signed in to change notification settings - Fork 493
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
181 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,181 @@ | ||
- Payara application server has been upgraded to version 6.2024.12. | ||
|
||
## Installation | ||
|
||
Change Install instructions - tbd | ||
|
||
### Upgrade to Payara 6.2024.12 | ||
|
||
If you are running Payara as a non-root user (and you should be!), **remember not to execute the commands below as root**. Use `sudo` to change to that user first. For example, `sudo -i -u dataverse` if `dataverse` is your dedicated application user. | ||
|
||
|
||
1. Stop Payara 6, if running. | ||
|
||
`` | ||
sudo -u dataverse /usr/local/payara6/bin/asadmin stop-domain | ||
`` | ||
1. Move it to a backup directory | ||
|
||
`sudo -u dataverse mv /usr/local/payara6 /usr/local/payara6.old` | ||
|
||
1. Download Payara 6.2024.12 | ||
|
||
`curl -L -O https://nexus.payara.fish/repository/payara- community/fish/payara/distributions/payara/6.2024.12/payara-6.2024.12.zip` | ||
|
||
1. Unzip it to /usr/local (or your preferred location) | ||
|
||
`sudo unzip payara-6.2024.12.zip -d /usr/local/` | ||
|
||
1. Change ownership of the unzipped Payara to your "service" user ("dataverse" by default) | ||
|
||
`sudo chown -R dataverse /usr/local/payara6` | ||
|
||
1. Create a Dataverse-specific domain.xml file | ||
|
||
i. Move the existing domain.xml file to a backup location | ||
|
||
``sudo -u dataverse cp /usr/local/payara6/glassfish/domains/domain1/config/domain.xml /usr/local/payara6/glassfish/domains/domain1/config/domain.xml.orig`` | ||
|
||
ii. Retrieve the domain.xml file for this version of Dataverse | ||
|
||
`curl https://github.com/IQSS/dataverse/raw/refs/tags/v6.6/conf/payara/domain.xml` | ||
|
||
|
||
iii. Move it into domain1 of your Payara 6.2024.12 install: | ||
|
||
`sudo -u dataverse cp domain.xml /usr/local/payara6/glassfish/domains/domain1/config/domain.xml` | ||
|
||
|
||
iv. Copy Dataverse-related lines from your existing domain.xml to sections of the new domain.xml highlighted by `Dataverse-instance-specific` comments | ||
|
||
`sudo egrep 'dataverse|doi|Xmx' /usr/local/payara5/glassfish/domains/domain1/config/domain.xml > lines.txt` | ||
|
||
`sudo vi /usr/local/payara6/glassfish/domains/domain1/config/domain.xml` | ||
|
||
|
||
The lines will appear in two sections, examples shown below (but your content will vary) | ||
|
||
|
||
Section 1: system properties (under `<server name="server" config-ref="server-config">` | ||
|
||
|
||
``` | ||
<system-property name="dataverse.db.user" value="dvnuser"></system-property> | ||
<system-property name="dataverse.db.host" value="localhost"></system-property> | ||
<system-property name="dataverse.db.port" value="5432"></system-property> | ||
<system-property name="dataverse.db.name" value="dvndb"></system-property> | ||
<system-property name="dataverse.db.password" value="dvnsecret"></system-property> | ||
``` | ||
|
||
|
||
Note: if you used the Dataverse installer, you won't have a `dataverse.db.password` property. See "Create password aliases" below | ||
|
||
|
||
Section 2: JVM options (under `<java-config classpath-suffix="" debug-options="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=9009" system-classpath="">`, the one under `<config name="server-config">`, not under `<config name="default-config">` | ||
|
||
|
||
Add the remaining lines (starting with `<jvm-options>` )from lines.txt created above, e.g. | ||
|
||
|
||
``` | ||
<jvm-options>-Ddataverse.files.directory=/usr/local/dvn/data</jvm-options | ||
<jvm-options>-Ddataverse.files.file.type=file</jvm-options | ||
<jvm-options>-Ddataverse.files.file.label=file</jvm-options | ||
<jvm-options>-Ddataverse.files.file.directory=/usr/local/dvn/data</jvm-options | ||
<jvm-options>-Ddataverse.rserve.host=localhost</jvm-options | ||
<jvm-options>-Ddataverse.rserve.port=6311</jvm-options | ||
<jvm-options>-Ddataverse.rserve.user=rserve</jvm-options | ||
<jvm-options>-Ddataverse.rserve.password=rserve</jvm-options | ||
<jvm-options>-Ddataverse.auth.password-reset-timeout-in-minutes=60</jvm-options | ||
<jvm-options>-Ddataverse.timerServer=true</jvm-options | ||
<jvm-options>-Ddataverse.fqdn=dev1.dataverse.org</jvm-options | ||
<jvm-options>-Ddataverse.siteUrl=https://dev1.dataverse.org</jvm-options | ||
<jvm-options>-Ddataverse.files.storage-driver-id=file</jvm-options | ||
<jvm-options>-Ddoi.username=testaccount</jvm-options | ||
<jvm-options>-Ddoi.password=notmypassword</jvm-options | ||
<jvm-options>-Ddoi.baseurlstring=https://mds.test.datacite.org/</jvm-options | ||
<jvm-options>-Ddoi.dataciterestapiurlstring=https://api.test.datacite.org</jvm-options | ||
``` | ||
|
||
- If you've enabled access logging or any other site-specific configuration, be sure to preserve them. For instance, the default domain.xml include | ||
|
||
|
||
``` | ||
<http-service | ||
<access-log></access-log | ||
``` | ||
|
||
|
||
but you may wish to include | ||
|
||
|
||
``` | ||
<http-service access-logging-enabled="true" | ||
<access-log format="%client.name% %datetime% %request% %status% %response.length% %header.user-agent% %header.referer% %cookie.JSESSIONID% %header.x-forwarded-for%"></access-log | ||
``` | ||
|
||
|
||
Be sure to keep a previous copy of your domain.xml for reference | ||
|
||
|
||
1. Update additional files from your existing Payara configuration | ||
|
||
i. Copy jhove files | ||
|
||
`jhove.conf` and `jhoveConfig.xsd` | ||
|
||
|
||
`sudo cp /usr/local/payara6.old/glassfish/domains/domain1/config/jhove* /usr/local/payara6/glassfish/domains/domain1/config/` | ||
|
||
ii. Replace the default `domain-passwords` files with yours | ||
|
||
|
||
`sudo cp /usr/local/payara6.old/glassfish/domains/domain1/config/domain-passwords /usr/local/payara6/glassfish/domains/domain1/config/` | ||
|
||
iii. Optional: add any dataverse specific lines in your existing logging.properties file to the default one | ||
|
||
`sudo vi /usr/local/payara6/glassfish/domains/domain1/config/logging.properties` | ||
|
||
iv. Assure all config files are owned by the dataverse user | ||
|
||
`sudo chown dataverse /usr/local/payara6/glassfish/domains/domain1/config/*` | ||
|
||
1. Copy/move logos and other files from from your old domain to the new one, e.g. | ||
|
||
|
||
`sudo -u dataverse mv -r /usr/local/payara6.old/glassfish/domains/domain1/docroot/logos /usr/local/payara6/glassfish/domains/domain1/docroot` | ||
|
||
`sudo -u dataverse mv -r /usr/local/payara6.old/glassfish/domains/domain1/docroot/sitemap /usr/local/payara6/glassfish/domains/domain1/docroot` | ||
|
||
`sudo -u dataverse mv -r /usr/local/payara6.old/glassfish/domains/domain1/files /usr/local/payara6/glassfish/domains/domain1` | ||
|
||
`sudo -u dataverse mv -r /usr/local/payara6.old/glassfish/domains/domain1/logs /usr/local/payara6/glassfish/domains/logs` |