| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- import BatchedUpdateModule from './helpers/batchedUpdate.mjs'
- const { batchedUpdate } = BatchedUpdateModule
- const oldImage = process.argv[2]
- const newImage = process.argv[3]
- function usage() {
- console.log(
- `Usage: update_project_image_name.js <old_texlive_image> <new_texlive_image>`
- )
- console.log(
- 'Environment variable ALL_TEX_LIVE_DOCKER_IMAGES must contain <new_texlive_image>.'
- )
- }
- if (!oldImage || !newImage) {
- usage()
- process.exit(1)
- }
- if (!process.env.ALL_TEX_LIVE_DOCKER_IMAGES) {
- console.error(
- 'Error: environment variable ALL_TEX_LIVE_DOCKER_IMAGES is not defined.'
- )
- usage()
- process.exit(1)
- }
- if (!process.env.ALL_TEX_LIVE_DOCKER_IMAGES.split(',').includes(newImage)) {
- console.error(`Error: ALL_TEX_LIVE_DOCKER_IMAGES doesn't contain ${newImage}`)
- usage()
- process.exit(1)
- }
- try {
- await batchedUpdate(
- 'projects',
- { imageName: oldImage },
- { $set: { imageName: newImage } }
- )
- console.log('Done')
- process.exit(0)
- } catch (error) {
- console.error(error)
- process.exit(1)
- }
|