You and your best friend Shiela decide to battle each other using clay figurines.
In order to do this, you first get your hands on the raw material - clay. In the first attempt, you manage to create a simple one with just a head, hands and legs. You keep it aside because that's the best you've got right now. On your next attempt, you learnt from your first figurine and added a sword as well. You keep that aside as well. On your 3rd attempt, you manage to add a little hat to your figurine. Each of those figurines that you kept aside is an "artifact" that you can use in your super-hero battle. For some reason, in your battle, if your 3rd figurine is destroyed, you can bring out the next best thing you've got (and so on and so forth).
In CI/CD systems, artifacts refer to the output of your build process that you would deploy. This could be a jar, tar or binary. You then deploy these artifacts onto your production servers. If you encounter issues with your current deployed binary, you could revert back to an earlier build artifact and ensure that your system continues to run (albeit with fewer features because it's the output of older code).
Thanks for the explanation!
Second this. Really wonderful visualization.
Glad you found it useful! I love these series of questions. #FeynmanRocks!
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.