The way ahead? Upgrading from Ubuntu 18.0 to 20.0

104 views
Skip to first unread message

Tim Wise

unread,
Dec 18, 2023, 11:44:18 PM12/18/23
to ica-ato...@googlegroups.com

Good afternoon, we currently have a Ubuntu server running 18.0 and Atom 2.6.

We have been asked to upgrade to Ubuntu 20.0 LTS to maintain security.

Unfortunately the upgrade out of the box kills ATOM 2.6 with a http internal 500.

 

Is there a fix for that or would we be best to build a new server and migrate?

Should we upgrade to ATOM 2.7while we are at it?

 

Thanks.

 

Tim

Tim Wise
IT Support Officer Systems
IT Department

E: tw...@loreto.vic.edu.au
T: 5329 6199

Loreto College
1600 Sturt St, Ballarat, 3350
www.loreto.vic.edu.au

  

Loreto College acknowledge the traditional owners of our land, the Wadawurrung people of the Kulin Nation, whose ancient wisdom and traditions continue to nurture these lands and waterways.

Dan Gillean

unread,
Dec 19, 2023, 8:57:25 AM12/19/23
to ica-ato...@googlegroups.com
Hi Tim, 

First, the responsible answer: 

Your best bet will likely be to build a new 20.04 server, and then follow the upgrade instructions for 2.7.x. The upgrade process for major versions of AtoM is generally always to install a new version from scratch and then load your data - upgrading in place rarely works well between major versions because in addition to database schema changes and other code updates, we also upgrade the underlying dependencies whenever possible in major releases, so it's worth carefully checking the installation process. 

The official installation docs describe the underlying dependencies and versions that we use in development, testing, and release preparation. As such, they are the ONLY combinations that we can guarantee will work as expected for an AtoM installation, and for which we can reliably offer support. 

You could possibly spend a lot of time comparing release notes between Ubuntu 18.04 and 20.04 to find differences and figure out how to get AtoM 2.6 running on 20.04 - only then to discover in the next step that the version of another dependency you need is not available for that Ubuntu version, and now you need to do a manual package install (which could cascade into its own set of headaches). I suspect it's possible to get 2.6 working fine on 18.04, but there are a number of bug fixes, security patches (releases 2.6.2, 2.6.3, 2.6.4, 2.7.1 and 2.7.2 all include security patches), new features, and enhancements in the latest AtoM release - if you are upgrading for security, why not ensure that you have all of those improvements upgraded as well?

Now, for a slight bit more pragmatism: 

Honestly, it depends on what error you find in the logs, and what that implies - as well as how exactly you've tried to upgrade in place. It's possible you just need to restart something, or fix one dependency - it's really hard to say without knowing more, and we never fully tested a  2.6 release on Ubuntu 20.04. I do suspect you would need at minimum to downgrade your PHP version - there are some non-backwards-compatible changes in PHP between versions 7.2 and 7.4, and AtoM 2.6 expects PHP 7.4 (which I don't think is the default included in Ubuntu 20.04). 

As a general rule, we don't recommend trying to upgrade in place for major release versions, and upgrading dependencies around AtoM can have unexpected results, as you are finding. However, something to consider for the future: 

If you would like to make upgrading in place much easier to do for minor releases, then consider following Option 2 in our installation instructions, and install from our GitHub code repository rather than the downloadable tarball from our website described in Option 1. Because we try to keep database schema changes and dependency upgrades to major releases, this means that for minor releases installed from the code repository, you can generally just: do the following for a minor version upgrade: 
  • Run a git pull --rebase against our repository
  • Restart services and clear the application cache
  • Repopulate the search index

Looking ahead:

Finally, it's worth noting that the Maintainers are working on the 2.8 release, which is currently loosely scheduled for mid-January 2024. This 2.8 release will still use Ubuntu 20.04 however - the Maintainer team is then planning for the AtoM 2.9 release to address a number of underlying dependency upgrades at once, and are looking at Ubuntu, PHP, and Elasticsearch as candidates for upgrade (or replacement, per Elastic's license change), as well as fully removing the legacy Bootstrap 2 framework code completely, finalizing an upgrade process we have spread across 3 major releases (starting with 2.7) to avoid massive disruption for users with custom themes. 

About Bootstrap: 

If you have a custom theme, this is another reason to upgrade to at least 2.7 now. The 2.7 release includes 2 base themes - the current 2.6 default Dominion theme, built using Bootstrap 2 (a CSS framework that has now been deprecated since 2013), as well as a new upgraded version of the Dominion theme, using Bootstrap 5.2. In 2.7, the current BS2 theme will still be the default, and was the focus of our release testing - meaning any custom themes will still work as expected for that release. This is intended to provide early access to community developers to the BS5 AtoM templates, so you can begin planning for a theme upgrade, before we fully remove the legacy Bootstrap 2 framework - since AtoM theme plugins work by extending the base Dominion theme, doing so will mean that any current BS2 custom themes will break when this finally happens (hence the multi-release plan). 

The 2.8 release switches the paradigm - we have focused all of our release testing on the new BS5 templates, and consider the older BS2 theme deprecated but still included, giving users with custom themes one more release to create a new BS5-compatible version of their theming plugin. We have also added some general notes on creating BS5 themes to the 2.8 documentation here. At this point, the BS5 Domininon theme will be the default on installation and anyone without a custom theme should use this default. Additionally, community developers maintaining an AtoM installation with a custom theme should be actively working to replace legacy themes with new BS5 compatible ones in this release cycle. 

In 2.9, Bootstrap 2 will finally be fully removed from AtoM's code base. Anyone with a legacy custom theme who has not upgraded it will not be able to upgrade to 2.9 without their site breaking. 

So, hopefully that provides a bit more context for coming releases, to help inform your maintenance plans. Whatever you decide to do now, good luck, and let us know how it goes!

Cheers, 

Dan Gillean, MAS, MLIS
AtoM Program Manager
Artefactual Systems, Inc.
604-527-2056
@accesstomemory
he / him


--
You received this message because you are subscribed to the Google Groups "AtoM Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ica-atom-user...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ica-atom-users/6b74764e8644484eb1f685857100b401%40loreto.vic.edu.au.

Tim Wise

unread,
Dec 19, 2023, 7:52:17 PM12/19/23
to ica-ato...@googlegroups.com

Good morning Dan, thanks for the prompt and comprehensive reply.

It will certainly help me and few others.

Being pragmatic it looks like a new build of Ubuntu 20.04 with an install of ATOM 2.7 and migrate all the data across.

Or if we are bit on the slow side and the migration process from ATOM 2.6 to 2.8 is not too difficult we could jump

Straight to ATOM 2.8 on Ubuntu 20.04.

 

Thanks once again and have a great Christmas and a Happy New Year.

 

Tim W

 

Tim Wise
IT Support Officer Systems
IT Department

E: tw...@loreto.vic.edu.au
T: 5329 6199

Loreto College
1600 Sturt St, Ballarat, 3350
www.loreto.vic.edu.au

  

Loreto College acknowledge the traditional owners of our land, the Wadawurrung people of the Kulin Nation, whose ancient wisdom and traditions continue to nurture these lands and waterways.

Reply all
Reply to author
Forward
0 new messages