Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Run Through Fedora 6 Upgrade Process #5978

Closed
3 tasks done
joncameron opened this issue Aug 9, 2024 · 3 comments
Closed
3 tasks done

Run Through Fedora 6 Upgrade Process #5978

joncameron opened this issue Aug 9, 2024 · 3 comments
Assignees

Comments

@joncameron
Copy link
Contributor

joncameron commented Aug 9, 2024

Description

Migration needs to be retested with newer versions of the tooling and Fedora 6.5. Follow the instructions for migrating Fedora 4 -> 6 (https://wiki.lyrasis.org/display/FEDORA6x/Migrate+to+Fedora+6#MigratetoFedora6-TheFedora4%E2%86%926MigrationPath) while making adjustments to the upgrade utils based upon https://gist.github.com/cjcolvar/39f1290323373499bb86de0981ba6f27 . Further changes to the tooling might be necessary.

Be sure to retain data in Fedora 4 separately from Fedora 6 so that we can run the migration multiple times as needed.

Related to #5986

Done Looks Like

  • Fedora 6.5 setup to run alongside Fedora 4 on avalon-dev. Or keep Fedora 4 as a dump that could be resurrected / re-migrated.
  • Migration run on avalon-dev data
  • Draft migration instructions for Avalon wiki
@elynema
Copy link
Contributor

elynema commented Oct 22, 2024

So far, Chris has done the migration on avalon-dev data from a dump. Getting ready to do migration on avalon-dev.

@cjcolvar
Copy link
Member

Draft instructions I used for avalon-dev (containerized). These will need to be refined and the modified upgrade-utils will need to be made available or changes pushed upstream and released. I attempted to use these instructions on mco-staging (non-containerized) but the export failed when attempting to export the root node. Therefore, these instructions may only work for repositories of small enough sizes.

In Fedora 4 container:
podman exec -it avalon_core-devel /bin/bash
cd /tmp
mkdir fc4_to_fc6
cd fc4_to_fc6

# Setup Java
curl -O -L https://download.java.net/java/GA/jdk21/fd2272bbf8e04c3dbaee13770090416c/35/GPL/openjdk-21_linux-x64_bin.tar.gz
tar xvzf openjdk-21_linux-x64_bin.tar.gz

# Download specific version of import/export tool
curl -O -L https://github.com/fcrepo-exts/fcrepo-import-export/releases/download/fcrepo-import-export-0.3.0/fcrepo-import-export-0.3.0.jar

# Export from fedora 4
jdk-21/bin/java -jar fcrepo-import-export-0.3.0.jar -b --dir fcrepo4.7.5_export --user fedoraAdmin:fedoraAdmin --mode export --resource http://localhost:8080/fedora/rest --binaries --versions

# Copy export out of container
podman cp avalon_core-devel:/tmp/fc4_to_fc6/fcrepo4.7.5_export tmp/fc4_to_fc6/fcrepo4.7.5_export

# Copy in modified version of upgrade-utils (from outside container)
podman cp /home/cjcolvar/fcrepo-upgrade-utils-6.4.0-SNAPSHOT.jar avalon_core-devel:/tmp/fc4_to_fc6

# Run migration Fedora 4 -> Fedora 5 (inside container again)
jdk-21/bin/java -jar fcrepo-upgrade-utils-6.4.0-SNAPSHOT.jar --input-dir fcrepo4.7.5_export --output-dir fcrepo5_export --source-version 4.7.5 --target-version 5+

# Run migration Fedora 5 -> Fedora 6
jdk-21/bin/java --add-opens java.base/java.util.concurrent=ALL-UNNAMED -jar fcrepo-upgrade-utils-6.4.0-SNAPSHOT.jar --input-dir fcrepo5_export --output-dir fcrepo6_export --source-version 5+ --target-version 6+ --base-uri http://localhost:8080/fedora/rest

# Copy migrated Fedora 6 (OCFL) filesystem outside container (from outside container)
podman cp avalon_core-devel:/tmp/fc4_to_fc6/fcrepo6_export tmp/fc4_to_fc6/fcrepo6_export

@elynema elynema closed this as completed Nov 7, 2024
@cjcolvar
Copy link
Member

Updates needed to the instructions above: Use version 1.2.0 for the import-export tool and modify the command to drop --versions and add --membership.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants