How frequently do deployments happen on freeCodeCamp?

Hey everyone :wave: :smile:

This isn’t an issue in any way, but I’m just curious: how frequently are updated deployed on freeCodeCamp?

I’ve often been told that an issue has been fixed and that the fix will go live in the next deployment, so I’m just curious, as someone who is still a beginner and who is interested in open source in general, and in contributing to fCC in particular.

What standards or criteria determine how frequently deployments happen, and roughly how frequently do they happen?

Thanks!

There isn’t a fixed frequency

I understand that. I’m just wondering what the criteria is. That is, on what basis does the staff determine things like:

  • when a deployment should happen vs. when to wait for more stuff to put into that deployment
  • how frequently deployment happens
  • how many updates go into one deployment
  • whether an update goes into this deployment or the next
  • etc.

Broadly speaking, I’m just wondering what the deployment process is like and what the thought / decision-making process behind it is like.

depends on what people are working on
there can be internal comunication about not to do a deployment until a certain thing has been merged
there can be someone asking for a deployment

every now and then

usually all the commits since the last deployment

usually, if it is not merged goes in the next one. Or the deployment wait a bit to happen if it’s really important

you can see on the repo there are three main brainches: main where develpment happen, prod-staging is the branch for the test environment, and prod-current is what is deployed on the main site

1 Like

So you’re saying that it’s generally determined on a case-by-case basis through discussion by the staff?

Let me make sure I understand:

  1. New features / fixes / etc. are placed in the prod-staging branch and then tested, and then
  2. if they pass all the tests and deemed fit for deployment they’re merged into the main branch, and
  3. then when it’s time for deployment, everything in the main branch is merged into the prod-current branch.

Is that correct?

no, everything goes into main first
then when we are ready for a deployment the commits are put on prod-staging, tested in the testing environment, and if everything seems correct, then the commits go to prod-current and deployed to the production site

yes
more than discussion it’s a “we have merged this thing that it would be great to see live soon, when can we do a deployment?” and unless there is something blocking the people that can do a deployment do it

1 Like

So what exactly is the testing environment? Is it like a private instance of the fCC website with a bunch of added testing tools, or something like that?

it’s a different site where things can be deployed and tested, which is almost identical to the freecodecamp.org site, and of which the database can be purged with no notice

1 Like

That makes sense. I really appreciate you taking the time to answer all my questions. Thanks!