Opened 12 months ago

Closed 8 months ago

#3052 closed task (fixed)

Upgrade pretalx to latest version

Reported by: robe Owned by: sac@…
Priority: normal Milestone: Sysadmin Contract 2024-I
Component: SysAdmin Keywords:
Cc:

Description

Current version is https://pretalx.com/p/news/releasing-pretalx-2023-1-3/

Our last release was about a year ago.

I'll test on staging first.

Change History (25)

comment:1 by robe, 12 months ago

Looks like now pretalx supports PostgreSQL as a database platform and is now stated as the preferred platform instead of MySQL/mariaDb.

I'm having a bit of difficulty building the new docker images for these, so will take a bit of time for me to resolve.

It's mostly an issue with adding in the extensions we are using. Also for some reason I got an error some application error trying to pull the 2023.1.3/latest base image from docker hub:

failed to register layer: ApplyLayer exit status 1 stdout:  stderr: lchown /pretalx/src/pretalx/frontend/schedule-editor/node_modules/character-parser/.npmignore: invalid argument

so I ended up rebuilding from the github docker-repo. That seemed to work fine, so it's just the pretalx-pages and public-voting extension I'm struggling with.

comment:2 by lucadelu, 12 months ago

Thanks Robe to look on it, pretalx-pages plugin is not really important, instead we need public-voting one.

comment:3 by robe, 12 months ago

Milestone: Sysadmin Contract 2023-ISysadmin Contract 2024-I

Moving my prior still open items to the next proposed Milestone

comment:4 by robe, 8 months ago

I was able to building the package with the two plugins we had pretalx-pages, public-voting upgrade staging to 2024.1.0 and also the ubuntu from 20.04 to 22.04.

To do so, I built the base image instead of pulling it from hub.docker.com. For some reason, when I tried to pull from hub.docker.com, I got an error about subguids (I think a limitation of running docker within a container). Not sure why I never have had the issue with other docker images. But building the base image from scratch, using that to install the plugins, and pushing to docker.osgeo.org worked fine and I was able to pull and install.

At a glance it seems okay but not much data in staging to tell. I'll upgrade production later today.

I'm going to upgrade

comment:5 by robe, 8 months ago

Starting the upgrade process first with the OS from Ubuntu 20.04 to 22.04.

comment:6 by robe, 8 months ago

Resolution: fixed
Status: newclosed

Done with upgrade. Now talks.osgeo.org is at preltalx version 2024.1.

I didn't switch the database to postgresql, but did upgrade from MySQL 5 to MySQL 8 as is needed to run 2024.1.

comment:7 by robe, 8 months ago

Resolution: fixed
Status: closedreopened

Oops just noticed an issue, the media is not showing like images of people and css.

e.g.

https://talks.osgeo.org/foss4g-2023/talk/XBHYF9/

Going to check what's wrong there.

comment:8 by robe, 8 months ago

I've rolled back to old pretalx until I figure out why it is not reading the volume folders.

Issue is it's not reading the /data/media folder, though if I upload a file, it does put it in the right place, but for some reason the web app is not mapping /data/media to url /media

I had thought maybe I wiped out the volume, but all files are there.

comment:9 by robe, 8 months ago

One more interesting development. I am having the same issue on talk.staging.osgeo.org, but I noticed if I flip the switch from debug = False to debug = True, it works properly.

This of course is not desirable, so I'm troubleshooting this some more and will report upstream if I conclude all my config settings are set properly.

comment:11 by lucadelu, 8 months ago

@robe thanks a lot for your time. Maybe something related to this https://github.com/pretalx/pretalx-docker/pull/60/ ?

in reply to:  11 comment:12 by robe, 8 months ago

Replying to lucadelu:

@robe thanks a lot for your time. Maybe something related to this https://github.com/pretalx/pretalx-docker/pull/60/ ?

That pull request just seems to edit comments and no logical changes so don't think that is it.

comment:13 by lucadelu, 8 months ago

The /media and /static directory are served by the web server?

@robe could you please activate the staging website (also the older version in the case), I need it for tonight to present it to FOSS4G 2024 team

Best Luca

in reply to:  13 ; comment:14 by robe, 8 months ago

Replying to lucadelu:

The /media and /static directory are served by the web server?

Yes except it works in debug mode and has worked before without having to install a separate webserver.

@robe could you please activate the staging website (also the older version in the case), I need it for tonight to present it to FOSS4G 2024 team

Best Luca

For this do you want the latest production server data in it?

comment:15 by robe, 8 months ago

P.S. I was thinking it was the introduction of the GUNICORN_FORWARDED_ALLOW_IPS cause that would explain why it works in debug and not production, but setting that didn't seem to make a difference

in reply to:  14 comment:16 by lucadelu, 8 months ago

Replying to robe:

Replying to lucadelu:

The /media and /static directory are served by the web server?

Yes except it works in debug mode and has worked before without having to install a separate webserver.

because in debug mode Django get the static and media in a different way

For this do you want the latest production server data in it?

as you prefer (and time to do it), I can create a test event without any problem

comment:17 by robe, 8 months ago

@lucadelu,

I've closed out #3162. Staging is now based on yesterday's backup of production.

Regarding the issue of /media and /static looking at our current production server I do see that there is an nginx instance that starts up as part of it, so guess maybe that's what's changed that nginx was built into the container before.

I'm debating if I should just stick with docker and launch and nginx container beside, or just go with the supported way of running pretalx (which is not using docker), Rixx said he doesn't support docker officially.

comment:18 by robe, 8 months ago

On further inspection, I see the issue is they removed nginx from the image.

https://github.com/pretalx/pretalx-docker/commit/702197a82d924d043dd8ac42cc9491387246d1ce

in reply to:  17 comment:19 by lucadelu, 8 months ago

Replying to robe:

@lucadelu,

I've closed out #3162. Staging is now based on yesterday's backup of production.

Thanks

Regarding the issue of /media and /static looking at our current production server I do see that there is an nginx instance that starts up as part of it, so guess maybe that's what's changed that nginx was built into the container before.

I'm debating if I should just stick with docker and launch and nginx container beside, or just go with the supported way of running pretalx (which is not using docker), Rixx said he doesn't support docker officially.

I have no clear idea as well, probably having all in docker should be better, I don't know but maybe you could add a nginx container and provide media and static with it?

comment:20 by robe, 8 months ago

@lucadelu,

I've tested on a plain vanilla new version https://talks.dev.osgeo.org

this one has a separate nginx in the docker-compose.

Let me know once you are done with your training today and I'll try to upgrade https://talks.staging.osgeo.org the same way I did talks.dev.osgeo.org and have you check it out before I deploy the upgrade to production.

comment:21 by robe, 8 months ago

@lucadelu,

I'm assuming you presentation is done. I'm planning to upgrade talk.staging.osgeo.org to 2024.1 release shortly. If all goes well, I'll upgrade production later in the week.

comment:22 by robe, 8 months ago

I am done upgrading https://talks.staging.osgeo.org. At a glance looks okay to me. @lucadelu,

If you have time can you provide an extra pair of eyes before I deploy the changes to production. Planning to deploy in about a week.

comment:23 by lucadelu, 8 months ago

@robe I tested staging and it looks good (as well as dev but no time to answer).

comment:24 by robe, 8 months ago

I'm going to start upgrade of production shortly.

comment:25 by robe, 8 months ago

Resolution: fixed
Status: reopenedclosed

done. talks.osgeo.org is now at v2024-1

Note: See TracTickets for help on using tickets.