Introducing SNAP Tracks!

Introducing snap tracks

A long requested feature from our snap users has been to have more control over their upgrades. Cases like where we release 2.0 and maybe it changes a behavior they want a bit more time to adjust for. Or more importantly they want to be there when the snap is updated in case something goes wrong.

Snap tracks are a simple way for you as a user to control which version of Rocket.Chat you are running.

By default if you perform:

snap install rocketchat-server

You are put into the “latest” track. This means you will always get the latest release no matter what.

We have now introduced the 2.x track. Switching to this track means that you will only receive updates related to our 2.x releases. So when we release 3.0 to snaps your server will ignore it.

Switching to a track

To switch to the 2.x track you need to run:

snap switch rocketchat-server --channel=2.x/stable

Much like the normal latest track you have stable / candidate / edge. We will likely continue to make use of candidate to release minor updates to before we move them over to stable.

If you do want to be in one of those other channels you can do:

snap switch rocketchat-server --channel=2.x/candidate

We’d still strongly recommend staying in the stable channel for production.

Upgrading between tracks

When comes time to upgrade to another version you can choose when to make this update happen.

First backup your data

https://rocket.chat/docs/installation/manual-installation/ubuntu/snaps/#how-do-i-backup-my-snap-data

Then you can perform:

snap switch rocketchat-server --channel=3.x/stable

Feedback

Now that we are beginning the use of tracks. We’d like to know from you. Is this useful? How would you like to be informed of new tracks being released?

We are investigating the possibility of maybe opening the track sooner if not with new releases? So maybe the release notes?

We’d love to hear your thoughts!

Thanks!

1 Like

As of now, there is a gap of maybe 4 weeks between a new release and its representation in snap. Does “latest - no matter what” mean this gap will be closed?

Great news! Looking foward to get new releases on SNAP earlier.

lastest seems to mean latest 2.X version, at the moment 2.4.9 :slight_smile:

Latest in this sense just means latest snap released.

Right now even though it feels like torture for some. It really is for the best interest of everyone that we take longer. In the time we delay, most of the time we get a couple of patch releases out. Leading to a more stable release when its automatically rolled out for all of the snap users. (which is a lot)

Indeed. We are going to introduce the 3.x track soon so people can begin to use 3.X as they wish.

We will keep posted!

We have now made 3.x the new default. So any new install will automatically track the 3.x track if they do not manually specify their track of choice. :slight_smile:

2 Likes

Thanks a lot - I switched the track to 3 and updated the server - works like a charm.

Very nice that we have 3.x as default now. Are there any plans to get a more transparent way of releasing snaps? Now it is very hard to plan when which new version will be available. For example we are waiting over 1 month for the release of 3.3 now.

1 Like

@aaron.ogle: Is there any documentation on the release plan of the snap releases. According to https://docs.rocket.chat/getting-support#supported-versions-of-rocket-chat 3.3 is the only supported version by now. The latest snap version I can get on my server is version 3.2.2. This is really odd. Besides this, it would be cool to have a rough overview, when which version come to snap, or to know if there are any problems with the releases. The Asked this question in the community chat too, but didn’t get any answers.

2 Likes

Yes, it’s getting strange - again.
Official release is 3.4.2 - so we skipped the 3.3 on snap all-together.

For snap being the “go to” way to run Rocketchat, it gets little attention - at least in terms of communication.

Maybe priorities are shifting towards the “enterprise” line instead :thinking:

1 Like

Hi everybody !

I am still on the latest/stable track.
If i understand well, it is a depreciated track, I will no longer have update on this one, won’t I ?

If not, is there any things to do to migrate from version 2 for version 3 ? Except save the database and switch the track of course.

Thank you and have a good day,

Julien.

I must be dense … I did

snap switch rocketchat-server --channel=3.x/stable
sudo snap refresh rocketchat-server

it says
snap "rocketchat-server" has no updates available

I’m currently on 3.2.2 commit id a720d25f

How can I get to 3.4.2?

Thanks

It’s one of the releases not automated and not maintained by the main release process. It used to be automated, but since snaps auto update if there is ever a problem the panic by people using the snap is 100x higher then a slow update. So it’s manual release and manual extra QA. It’s because of this that it’s a bit behind at the moment. The two people normally that do this have been extremely busy.

We are going to try and get 3.4 released in next couple of days.

Also will be trying to get the auto build turned back on. Maybe auto posting to candidate channel or edge channel for anyone that wants ASAP instead of worrying about getting QA’d builds.

1 Like

3.4.2 should now be released on the 3.x/stable channel.

1 Like

Looking good so far, thanks.

Great work aaron! now mine RC is at 3.4.2 All automatically! Just a question: why upgrade has initiated at 11 AM when is normal time is 2AM?

I’m not really sure why it would update sooner. You might be able to tweak the time it checks. If you did a snap refresh recently it might have some how adjusted the time. I’m not really sure how the snapd refresh stuff is working now days

We’re on the latest track and still on 2.4.11. Is this information out of date?

If you recently installed… could be architecture related?

Otherwise if you installed before that date, I don’t think it auto puts you in the 3.x track

When will 3.5 available?

All channels still show 3.4.2:

  3.x/stable:       3.4.2  2020-07-20 (1438) 280MB -
  3.x/candidate:    3.4.2  2020-07-20 (1438) 280MB -
  3.x/beta:         ↑                              
  3.x/edge:         ↑                              
  latest/stable:    2.4.11 2020-05-12 (1427) 267MB -
  latest/candidate: 2.4.11 2020-02-27 (1427) 267MB -
  latest/beta:      2.1.1  2019-10-21 (1414) 251MB -
  latest/edge:      2.4.11 2020-02-27 (1427) 267MB -
  2.x/stable:       2.4.11 2020-05-12 (1427) 267MB -
  2.x/candidate:    2.4.12 2020-05-12 (1436) 267MB -
  2.x/beta:         ↑                              
  2.x/edge:         ↑                              
installed:          3.4.2             (1438) 280MB -