From 4dd0c4265d4b1326360e90f3dbe466d68a0b9220 Mon Sep 17 00:00:00 2001 From: rosie yohannan Date: Tue, 18 Nov 2025 11:11:59 +0000 Subject: [PATCH 1/2] add extension and archive unused images --- antora-playbook.yml | 3 +- .../guides/modules/ROOT/images/SSH-server.png | Bin .../guides/modules/ROOT/images/admin.svg | 0 .../modules/ROOT/images/api-structure.png | Bin .../modules/ROOT/images/approval_job.png | Bin .../ROOT/images/approval_job_cloud.png | Bin .../modules/ROOT/images/arrow-green-right.svg | 0 .../modules/ROOT/images/arrow-right.svg | 0 .../modules/ROOT/images/branch-filter.png | Bin .../guides/modules/ROOT/images/builds.svg | 0 .../modules/ROOT/images/cci-organizations.png | Bin .../guides/modules/ROOT/images/close-path.svg | 0 .../guides/modules/ROOT/images/close.svg | 0 .../ROOT/images/config-select-config-file.png | Bin .../ROOT/images/config-set-up-project.png | Bin .../guides/modules/ROOT/images/config.svg | 0 .../modules/ROOT/images/contexts_server.png | Bin .../guides/modules/ROOT/images/dashboard.png | Bin .../guides/modules/ROOT/images/deploy.svg | 0 .../ROOT/images/deploy/add-env-var.png | Bin .../images/deploy/add-release-environment.png | Bin .../images/deploy/aws-iam-add-provider.png | Bin .../images/deploy/copy-markers-commands.png | Bin .../images/deploy/create-new-environment.png | Bin .../images/deploy/github-app-installed.png | Bin .../ROOT/images/deploy/job-approval.png | Bin .../deploy/release-create-new-token.png | Bin .../modules/ROOT/images/deploy/role-arn.png | Bin .../ROOT/images/deploy/rollback-create-pr.png | Bin .../deploy/sagemaker-component-view.png | Bin .../ROOT/images/deploy/sagemaker-releases.png | Bin .../deploy/set-up-a-rollback-pipeline.png | Bin .../images/deploy/wait-for-availability.png | Bin .../guides/modules/ROOT/images/dlc_cloud.png | Bin .../guides/modules/ROOT/images/duration.svg | 0 .../modules/ROOT/images/edit-config-file.png | Bin .../ROOT/images/enable-web-notifications.png | Bin .../CCI-config-editor-2.png | Bin .../SSH-into-build.png | Bin .../break-your-build.png | Bin .../collab-with-team.png | Bin .../congrats-first-green-pipeline.png | Bin .../explore-workflows.png | Bin .../pass-pipeline-gitlab.png | Bin .../select-project.png | Bin .../view-results.png | Bin .../what-just-happened.png | Bin ...tlab-ga-project-settings-configuration.png | Bin ...itlab-ga-project-settings-edit-trigger.png | Bin .../gitlab-ga-project-settings-triggers.png | Bin .../gitlab-preview-org-settings-people.png | Bin ...ew-project-settings-customize-triggers.png | Bin .../guides/modules/ROOT/images/greenCheck.svg | 0 .../guides/modules/ROOT/images/ic-globe.svg | 0 .../modules/ROOT/images/insights-1.0.gif | Bin .../ROOT/images/insights-current-build.png | Bin .../guides/modules/ROOT/images/insights.png | Bin .../ios-getting-started-manage-schemes.png | Bin .../ios-getting-started-scheme-selector.png | Bin .../ROOT/images/jira_allow_app_access.png | Bin .../modules/ROOT/images/jira_get_org_id.png | Bin .../guides/modules/ROOT/images/job_status.png | Bin .../modules/ROOT/images/llmops/artifact.png | Bin .../guides/modules/ROOT/images/metrics.png | Bin .../modules/ROOT/images/modal-bg-pattern.svg | 0 .../ROOT/images/notification-granting.gif | Bin .../ROOT/images/notifications-enable-web.png | Bin .../ROOT/images/org-centric-ui_newui.png | Bin .../ROOT/images/org-settings-with-orbs.png | Bin .../guides/modules/ROOT/images/pdf-header.png | Bin .../ROOT/images/pipeline-breadcrumbs.png | Bin .../ROOT/images/pipelines-job-output.png | Bin .../modules/ROOT/images/plan-settings.png | Bin .../ROOT/images/project-notifications.png | Bin .../ROOT/images/project-settings-cloud.png | Bin .../images/project-settings-configuration.png | Bin .../images/project-settings-pipelines.png | Bin .../ROOT/images/project-settings-triggers.png | Bin .../guides/modules/ROOT/images/project.svg | 0 .../guides/modules/ROOT/images/reference.svg | 0 .../modules/ROOT/images/rerun-from-failed.png | Bin .../ROOT/images/resource-class-insights.png | Bin .../ROOT/images/runnerui_step_five.png | Bin .../ROOT/images/runnerui_step_four.png | Bin .../ROOT/images/runnerui_step_four_cr.png | Bin .../modules/ROOT/images/runnerui_step_one.png | Bin .../ROOT/images/runnerui_step_three.png | Bin .../modules/ROOT/images/runnerui_step_two.png | Bin .../screen_github_checks_disable_new_ui.png | Bin .../images/screen_github_checks_new_ui.png | Bin .../guides/modules/ROOT/images/settings.png | Bin .../ROOT/images/standalone-project-slug.png | Bin .../guides/modules/ROOT/images/start.svg | 0 .../guides/modules/ROOT/images/tag.svg | 0 .../ROOT/images/trigger-pipeline-popup.png | Bin .../triggers/custom-webhooks-secret-url.png | Bin .../ROOT/images/triggers/run-on-closed.png | Bin .../images/triggers/run-on-open-focus.png | Bin .../vs_code_extension_cci-commands-gif.gif | Bin ...ode_extension_select-project-optimised.gif | Bin ...vs_code_extension_ssh-in-remote-window.gif | Bin .../vs_code_extension_ssh-in-terminal.gif | Bin .../modules/ROOT/images/walkthrough6.png | Bin .../modules/ROOT/images/walkthrough7.png | Bin .../modules/ROOT/images/walkthrough8.png | Bin .../modules/ROOT/images/web_ui_dashboard.png | Bin .../modules/ROOT/images/web_ui_projects.png | Bin .../ROOT/images/web_ui_text_editor.png | Bin .../guides/modules/ROOT/images/welcome.svg | 0 .../modules/ROOT/images/workflow_detail.png | Bin .../phase-2-configure-object-storage.adoc | 16 +- .../phase-2-configure-object-storage.adoc | 16 +- .../phase-2-configure-object-storage.adoc | 16 +- .../phase-2-configure-object-storage.adoc | 16 +- .../phase-2-configure-object-storage.adoc | 16 +- .../phase-2-configure-object-storage.adoc | 16 +- .../phase-2-configure-object-storage.adoc | 16 +- extensions/detect-unused-media-extension.js | 154 ++++++++++++++++++ package-lock.json | 85 ++-------- 119 files changed, 222 insertions(+), 132 deletions(-) rename {docs => archive/images}/guides/modules/ROOT/images/SSH-server.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/admin.svg (100%) rename {docs => archive/images}/guides/modules/ROOT/images/api-structure.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/approval_job.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/approval_job_cloud.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/arrow-green-right.svg (100%) rename {docs => archive/images}/guides/modules/ROOT/images/arrow-right.svg (100%) rename {docs => archive/images}/guides/modules/ROOT/images/branch-filter.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/builds.svg (100%) rename {docs => archive/images}/guides/modules/ROOT/images/cci-organizations.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/close-path.svg (100%) rename {docs => archive/images}/guides/modules/ROOT/images/close.svg (100%) rename {docs => archive/images}/guides/modules/ROOT/images/config-select-config-file.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/config-set-up-project.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/config.svg (100%) rename {docs => archive/images}/guides/modules/ROOT/images/contexts_server.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/dashboard.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/deploy.svg (100%) rename {docs => archive/images}/guides/modules/ROOT/images/deploy/add-env-var.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/deploy/add-release-environment.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/deploy/aws-iam-add-provider.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/deploy/copy-markers-commands.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/deploy/create-new-environment.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/deploy/github-app-installed.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/deploy/job-approval.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/deploy/release-create-new-token.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/deploy/role-arn.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/deploy/rollback-create-pr.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/deploy/sagemaker-component-view.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/deploy/sagemaker-releases.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/deploy/set-up-a-rollback-pipeline.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/deploy/wait-for-availability.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/dlc_cloud.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/duration.svg (100%) rename {docs => archive/images}/guides/modules/ROOT/images/edit-config-file.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/enable-web-notifications.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/getting-started-guide-exp/CCI-config-editor-2.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/getting-started-guide-exp/SSH-into-build.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/getting-started-guide-exp/break-your-build.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/getting-started-guide-exp/collab-with-team.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/getting-started-guide-exp/congrats-first-green-pipeline.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/getting-started-guide-exp/explore-workflows.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/getting-started-guide-exp/pass-pipeline-gitlab.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/getting-started-guide-exp/select-project.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/getting-started-guide-exp/view-results.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/getting-started-guide-exp/what-just-happened.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/gl-ga/gitlab-ga-project-settings-configuration.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/gl-ga/gitlab-ga-project-settings-edit-trigger.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/gl-ga/gitlab-ga-project-settings-triggers.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/gl-preview/gitlab-preview-org-settings-people.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/gl-preview/gitlab-preview-project-settings-customize-triggers.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/greenCheck.svg (100%) rename {docs => archive/images}/guides/modules/ROOT/images/ic-globe.svg (100%) rename {docs => archive/images}/guides/modules/ROOT/images/insights-1.0.gif (100%) rename {docs => archive/images}/guides/modules/ROOT/images/insights-current-build.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/insights.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/ios-getting-started-manage-schemes.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/ios-getting-started-scheme-selector.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/jira_allow_app_access.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/jira_get_org_id.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/job_status.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/llmops/artifact.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/metrics.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/modal-bg-pattern.svg (100%) rename {docs => archive/images}/guides/modules/ROOT/images/notification-granting.gif (100%) rename {docs => archive/images}/guides/modules/ROOT/images/notifications-enable-web.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/org-centric-ui_newui.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/org-settings-with-orbs.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/pdf-header.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/pipeline-breadcrumbs.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/pipelines-job-output.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/plan-settings.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/project-notifications.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/project-settings-cloud.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/project-settings-configuration.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/project-settings-pipelines.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/project-settings-triggers.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/project.svg (100%) rename {docs => archive/images}/guides/modules/ROOT/images/reference.svg (100%) rename {docs => archive/images}/guides/modules/ROOT/images/rerun-from-failed.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/resource-class-insights.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/runnerui_step_five.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/runnerui_step_four.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/runnerui_step_four_cr.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/runnerui_step_one.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/runnerui_step_three.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/runnerui_step_two.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/screen_github_checks_disable_new_ui.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/screen_github_checks_new_ui.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/settings.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/standalone-project-slug.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/start.svg (100%) rename {docs => archive/images}/guides/modules/ROOT/images/tag.svg (100%) rename {docs => archive/images}/guides/modules/ROOT/images/trigger-pipeline-popup.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/triggers/custom-webhooks-secret-url.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/triggers/run-on-closed.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/triggers/run-on-open-focus.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/vs_code_extension_cci-commands-gif.gif (100%) rename {docs => archive/images}/guides/modules/ROOT/images/vs_code_extension_select-project-optimised.gif (100%) rename {docs => archive/images}/guides/modules/ROOT/images/vs_code_extension_ssh-in-remote-window.gif (100%) rename {docs => archive/images}/guides/modules/ROOT/images/vs_code_extension_ssh-in-terminal.gif (100%) rename {docs => archive/images}/guides/modules/ROOT/images/walkthrough6.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/walkthrough7.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/walkthrough8.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/web_ui_dashboard.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/web_ui_projects.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/web_ui_text_editor.png (100%) rename {docs => archive/images}/guides/modules/ROOT/images/welcome.svg (100%) rename {docs => archive/images}/guides/modules/ROOT/images/workflow_detail.png (100%) create mode 100644 extensions/detect-unused-media-extension.js diff --git a/antora-playbook.yml b/antora-playbook.yml index 48409bec0e..47f10641cf 100644 --- a/antora-playbook.yml +++ b/antora-playbook.yml @@ -80,4 +80,5 @@ antora: background: '#E3F5E5' line_color: '#B4B8C6' primary_border_color: '#008542' - primary_text_color: '#00381A' \ No newline at end of file + primary_text_color: '#00381A' + - require: ./extensions/detect-unused-media-extension.js \ No newline at end of file diff --git a/docs/guides/modules/ROOT/images/SSH-server.png b/archive/images/guides/modules/ROOT/images/SSH-server.png similarity index 100% rename from docs/guides/modules/ROOT/images/SSH-server.png rename to archive/images/guides/modules/ROOT/images/SSH-server.png diff --git a/docs/guides/modules/ROOT/images/admin.svg b/archive/images/guides/modules/ROOT/images/admin.svg similarity index 100% rename from docs/guides/modules/ROOT/images/admin.svg rename to archive/images/guides/modules/ROOT/images/admin.svg diff --git a/docs/guides/modules/ROOT/images/api-structure.png b/archive/images/guides/modules/ROOT/images/api-structure.png similarity index 100% rename from docs/guides/modules/ROOT/images/api-structure.png rename to archive/images/guides/modules/ROOT/images/api-structure.png diff --git a/docs/guides/modules/ROOT/images/approval_job.png b/archive/images/guides/modules/ROOT/images/approval_job.png similarity index 100% rename from docs/guides/modules/ROOT/images/approval_job.png rename to archive/images/guides/modules/ROOT/images/approval_job.png diff --git a/docs/guides/modules/ROOT/images/approval_job_cloud.png b/archive/images/guides/modules/ROOT/images/approval_job_cloud.png similarity index 100% rename from docs/guides/modules/ROOT/images/approval_job_cloud.png rename to archive/images/guides/modules/ROOT/images/approval_job_cloud.png diff --git a/docs/guides/modules/ROOT/images/arrow-green-right.svg b/archive/images/guides/modules/ROOT/images/arrow-green-right.svg similarity index 100% rename from docs/guides/modules/ROOT/images/arrow-green-right.svg rename to archive/images/guides/modules/ROOT/images/arrow-green-right.svg diff --git a/docs/guides/modules/ROOT/images/arrow-right.svg b/archive/images/guides/modules/ROOT/images/arrow-right.svg similarity index 100% rename from docs/guides/modules/ROOT/images/arrow-right.svg rename to archive/images/guides/modules/ROOT/images/arrow-right.svg diff --git a/docs/guides/modules/ROOT/images/branch-filter.png b/archive/images/guides/modules/ROOT/images/branch-filter.png similarity index 100% rename from docs/guides/modules/ROOT/images/branch-filter.png rename to archive/images/guides/modules/ROOT/images/branch-filter.png diff --git a/docs/guides/modules/ROOT/images/builds.svg b/archive/images/guides/modules/ROOT/images/builds.svg similarity index 100% rename from docs/guides/modules/ROOT/images/builds.svg rename to archive/images/guides/modules/ROOT/images/builds.svg diff --git a/docs/guides/modules/ROOT/images/cci-organizations.png b/archive/images/guides/modules/ROOT/images/cci-organizations.png similarity index 100% rename from docs/guides/modules/ROOT/images/cci-organizations.png rename to archive/images/guides/modules/ROOT/images/cci-organizations.png diff --git a/docs/guides/modules/ROOT/images/close-path.svg b/archive/images/guides/modules/ROOT/images/close-path.svg similarity index 100% rename from docs/guides/modules/ROOT/images/close-path.svg rename to archive/images/guides/modules/ROOT/images/close-path.svg diff --git a/docs/guides/modules/ROOT/images/close.svg b/archive/images/guides/modules/ROOT/images/close.svg similarity index 100% rename from docs/guides/modules/ROOT/images/close.svg rename to archive/images/guides/modules/ROOT/images/close.svg diff --git a/docs/guides/modules/ROOT/images/config-select-config-file.png b/archive/images/guides/modules/ROOT/images/config-select-config-file.png similarity index 100% rename from docs/guides/modules/ROOT/images/config-select-config-file.png rename to archive/images/guides/modules/ROOT/images/config-select-config-file.png diff --git a/docs/guides/modules/ROOT/images/config-set-up-project.png b/archive/images/guides/modules/ROOT/images/config-set-up-project.png similarity index 100% rename from docs/guides/modules/ROOT/images/config-set-up-project.png rename to archive/images/guides/modules/ROOT/images/config-set-up-project.png diff --git a/docs/guides/modules/ROOT/images/config.svg b/archive/images/guides/modules/ROOT/images/config.svg similarity index 100% rename from docs/guides/modules/ROOT/images/config.svg rename to archive/images/guides/modules/ROOT/images/config.svg diff --git a/docs/guides/modules/ROOT/images/contexts_server.png b/archive/images/guides/modules/ROOT/images/contexts_server.png similarity index 100% rename from docs/guides/modules/ROOT/images/contexts_server.png rename to archive/images/guides/modules/ROOT/images/contexts_server.png diff --git a/docs/guides/modules/ROOT/images/dashboard.png b/archive/images/guides/modules/ROOT/images/dashboard.png similarity index 100% rename from docs/guides/modules/ROOT/images/dashboard.png rename to archive/images/guides/modules/ROOT/images/dashboard.png diff --git a/docs/guides/modules/ROOT/images/deploy.svg b/archive/images/guides/modules/ROOT/images/deploy.svg similarity index 100% rename from docs/guides/modules/ROOT/images/deploy.svg rename to archive/images/guides/modules/ROOT/images/deploy.svg diff --git a/docs/guides/modules/ROOT/images/deploy/add-env-var.png b/archive/images/guides/modules/ROOT/images/deploy/add-env-var.png similarity index 100% rename from docs/guides/modules/ROOT/images/deploy/add-env-var.png rename to archive/images/guides/modules/ROOT/images/deploy/add-env-var.png diff --git a/docs/guides/modules/ROOT/images/deploy/add-release-environment.png b/archive/images/guides/modules/ROOT/images/deploy/add-release-environment.png similarity index 100% rename from docs/guides/modules/ROOT/images/deploy/add-release-environment.png rename to archive/images/guides/modules/ROOT/images/deploy/add-release-environment.png diff --git a/docs/guides/modules/ROOT/images/deploy/aws-iam-add-provider.png b/archive/images/guides/modules/ROOT/images/deploy/aws-iam-add-provider.png similarity index 100% rename from docs/guides/modules/ROOT/images/deploy/aws-iam-add-provider.png rename to archive/images/guides/modules/ROOT/images/deploy/aws-iam-add-provider.png diff --git a/docs/guides/modules/ROOT/images/deploy/copy-markers-commands.png b/archive/images/guides/modules/ROOT/images/deploy/copy-markers-commands.png similarity index 100% rename from docs/guides/modules/ROOT/images/deploy/copy-markers-commands.png rename to archive/images/guides/modules/ROOT/images/deploy/copy-markers-commands.png diff --git a/docs/guides/modules/ROOT/images/deploy/create-new-environment.png b/archive/images/guides/modules/ROOT/images/deploy/create-new-environment.png similarity index 100% rename from docs/guides/modules/ROOT/images/deploy/create-new-environment.png rename to archive/images/guides/modules/ROOT/images/deploy/create-new-environment.png diff --git a/docs/guides/modules/ROOT/images/deploy/github-app-installed.png b/archive/images/guides/modules/ROOT/images/deploy/github-app-installed.png similarity index 100% rename from docs/guides/modules/ROOT/images/deploy/github-app-installed.png rename to archive/images/guides/modules/ROOT/images/deploy/github-app-installed.png diff --git a/docs/guides/modules/ROOT/images/deploy/job-approval.png b/archive/images/guides/modules/ROOT/images/deploy/job-approval.png similarity index 100% rename from docs/guides/modules/ROOT/images/deploy/job-approval.png rename to archive/images/guides/modules/ROOT/images/deploy/job-approval.png diff --git a/docs/guides/modules/ROOT/images/deploy/release-create-new-token.png b/archive/images/guides/modules/ROOT/images/deploy/release-create-new-token.png similarity index 100% rename from docs/guides/modules/ROOT/images/deploy/release-create-new-token.png rename to archive/images/guides/modules/ROOT/images/deploy/release-create-new-token.png diff --git a/docs/guides/modules/ROOT/images/deploy/role-arn.png b/archive/images/guides/modules/ROOT/images/deploy/role-arn.png similarity index 100% rename from docs/guides/modules/ROOT/images/deploy/role-arn.png rename to archive/images/guides/modules/ROOT/images/deploy/role-arn.png diff --git a/docs/guides/modules/ROOT/images/deploy/rollback-create-pr.png b/archive/images/guides/modules/ROOT/images/deploy/rollback-create-pr.png similarity index 100% rename from docs/guides/modules/ROOT/images/deploy/rollback-create-pr.png rename to archive/images/guides/modules/ROOT/images/deploy/rollback-create-pr.png diff --git a/docs/guides/modules/ROOT/images/deploy/sagemaker-component-view.png b/archive/images/guides/modules/ROOT/images/deploy/sagemaker-component-view.png similarity index 100% rename from docs/guides/modules/ROOT/images/deploy/sagemaker-component-view.png rename to archive/images/guides/modules/ROOT/images/deploy/sagemaker-component-view.png diff --git a/docs/guides/modules/ROOT/images/deploy/sagemaker-releases.png b/archive/images/guides/modules/ROOT/images/deploy/sagemaker-releases.png similarity index 100% rename from docs/guides/modules/ROOT/images/deploy/sagemaker-releases.png rename to archive/images/guides/modules/ROOT/images/deploy/sagemaker-releases.png diff --git a/docs/guides/modules/ROOT/images/deploy/set-up-a-rollback-pipeline.png b/archive/images/guides/modules/ROOT/images/deploy/set-up-a-rollback-pipeline.png similarity index 100% rename from docs/guides/modules/ROOT/images/deploy/set-up-a-rollback-pipeline.png rename to archive/images/guides/modules/ROOT/images/deploy/set-up-a-rollback-pipeline.png diff --git a/docs/guides/modules/ROOT/images/deploy/wait-for-availability.png b/archive/images/guides/modules/ROOT/images/deploy/wait-for-availability.png similarity index 100% rename from docs/guides/modules/ROOT/images/deploy/wait-for-availability.png rename to archive/images/guides/modules/ROOT/images/deploy/wait-for-availability.png diff --git a/docs/guides/modules/ROOT/images/dlc_cloud.png b/archive/images/guides/modules/ROOT/images/dlc_cloud.png similarity index 100% rename from docs/guides/modules/ROOT/images/dlc_cloud.png rename to archive/images/guides/modules/ROOT/images/dlc_cloud.png diff --git a/docs/guides/modules/ROOT/images/duration.svg b/archive/images/guides/modules/ROOT/images/duration.svg similarity index 100% rename from docs/guides/modules/ROOT/images/duration.svg rename to archive/images/guides/modules/ROOT/images/duration.svg diff --git a/docs/guides/modules/ROOT/images/edit-config-file.png b/archive/images/guides/modules/ROOT/images/edit-config-file.png similarity index 100% rename from docs/guides/modules/ROOT/images/edit-config-file.png rename to archive/images/guides/modules/ROOT/images/edit-config-file.png diff --git a/docs/guides/modules/ROOT/images/enable-web-notifications.png b/archive/images/guides/modules/ROOT/images/enable-web-notifications.png similarity index 100% rename from docs/guides/modules/ROOT/images/enable-web-notifications.png rename to archive/images/guides/modules/ROOT/images/enable-web-notifications.png diff --git a/docs/guides/modules/ROOT/images/getting-started-guide-exp/CCI-config-editor-2.png b/archive/images/guides/modules/ROOT/images/getting-started-guide-exp/CCI-config-editor-2.png similarity index 100% rename from docs/guides/modules/ROOT/images/getting-started-guide-exp/CCI-config-editor-2.png rename to archive/images/guides/modules/ROOT/images/getting-started-guide-exp/CCI-config-editor-2.png diff --git a/docs/guides/modules/ROOT/images/getting-started-guide-exp/SSH-into-build.png b/archive/images/guides/modules/ROOT/images/getting-started-guide-exp/SSH-into-build.png similarity index 100% rename from docs/guides/modules/ROOT/images/getting-started-guide-exp/SSH-into-build.png rename to archive/images/guides/modules/ROOT/images/getting-started-guide-exp/SSH-into-build.png diff --git a/docs/guides/modules/ROOT/images/getting-started-guide-exp/break-your-build.png b/archive/images/guides/modules/ROOT/images/getting-started-guide-exp/break-your-build.png similarity index 100% rename from docs/guides/modules/ROOT/images/getting-started-guide-exp/break-your-build.png rename to archive/images/guides/modules/ROOT/images/getting-started-guide-exp/break-your-build.png diff --git a/docs/guides/modules/ROOT/images/getting-started-guide-exp/collab-with-team.png b/archive/images/guides/modules/ROOT/images/getting-started-guide-exp/collab-with-team.png similarity index 100% rename from docs/guides/modules/ROOT/images/getting-started-guide-exp/collab-with-team.png rename to archive/images/guides/modules/ROOT/images/getting-started-guide-exp/collab-with-team.png diff --git a/docs/guides/modules/ROOT/images/getting-started-guide-exp/congrats-first-green-pipeline.png b/archive/images/guides/modules/ROOT/images/getting-started-guide-exp/congrats-first-green-pipeline.png similarity index 100% rename from docs/guides/modules/ROOT/images/getting-started-guide-exp/congrats-first-green-pipeline.png rename to archive/images/guides/modules/ROOT/images/getting-started-guide-exp/congrats-first-green-pipeline.png diff --git a/docs/guides/modules/ROOT/images/getting-started-guide-exp/explore-workflows.png b/archive/images/guides/modules/ROOT/images/getting-started-guide-exp/explore-workflows.png similarity index 100% rename from docs/guides/modules/ROOT/images/getting-started-guide-exp/explore-workflows.png rename to archive/images/guides/modules/ROOT/images/getting-started-guide-exp/explore-workflows.png diff --git a/docs/guides/modules/ROOT/images/getting-started-guide-exp/pass-pipeline-gitlab.png b/archive/images/guides/modules/ROOT/images/getting-started-guide-exp/pass-pipeline-gitlab.png similarity index 100% rename from docs/guides/modules/ROOT/images/getting-started-guide-exp/pass-pipeline-gitlab.png rename to archive/images/guides/modules/ROOT/images/getting-started-guide-exp/pass-pipeline-gitlab.png diff --git a/docs/guides/modules/ROOT/images/getting-started-guide-exp/select-project.png b/archive/images/guides/modules/ROOT/images/getting-started-guide-exp/select-project.png similarity index 100% rename from docs/guides/modules/ROOT/images/getting-started-guide-exp/select-project.png rename to archive/images/guides/modules/ROOT/images/getting-started-guide-exp/select-project.png diff --git a/docs/guides/modules/ROOT/images/getting-started-guide-exp/view-results.png b/archive/images/guides/modules/ROOT/images/getting-started-guide-exp/view-results.png similarity index 100% rename from docs/guides/modules/ROOT/images/getting-started-guide-exp/view-results.png rename to archive/images/guides/modules/ROOT/images/getting-started-guide-exp/view-results.png diff --git a/docs/guides/modules/ROOT/images/getting-started-guide-exp/what-just-happened.png b/archive/images/guides/modules/ROOT/images/getting-started-guide-exp/what-just-happened.png similarity index 100% rename from docs/guides/modules/ROOT/images/getting-started-guide-exp/what-just-happened.png rename to archive/images/guides/modules/ROOT/images/getting-started-guide-exp/what-just-happened.png diff --git a/docs/guides/modules/ROOT/images/gl-ga/gitlab-ga-project-settings-configuration.png b/archive/images/guides/modules/ROOT/images/gl-ga/gitlab-ga-project-settings-configuration.png similarity index 100% rename from docs/guides/modules/ROOT/images/gl-ga/gitlab-ga-project-settings-configuration.png rename to archive/images/guides/modules/ROOT/images/gl-ga/gitlab-ga-project-settings-configuration.png diff --git a/docs/guides/modules/ROOT/images/gl-ga/gitlab-ga-project-settings-edit-trigger.png b/archive/images/guides/modules/ROOT/images/gl-ga/gitlab-ga-project-settings-edit-trigger.png similarity index 100% rename from docs/guides/modules/ROOT/images/gl-ga/gitlab-ga-project-settings-edit-trigger.png rename to archive/images/guides/modules/ROOT/images/gl-ga/gitlab-ga-project-settings-edit-trigger.png diff --git a/docs/guides/modules/ROOT/images/gl-ga/gitlab-ga-project-settings-triggers.png b/archive/images/guides/modules/ROOT/images/gl-ga/gitlab-ga-project-settings-triggers.png similarity index 100% rename from docs/guides/modules/ROOT/images/gl-ga/gitlab-ga-project-settings-triggers.png rename to archive/images/guides/modules/ROOT/images/gl-ga/gitlab-ga-project-settings-triggers.png diff --git a/docs/guides/modules/ROOT/images/gl-preview/gitlab-preview-org-settings-people.png b/archive/images/guides/modules/ROOT/images/gl-preview/gitlab-preview-org-settings-people.png similarity index 100% rename from docs/guides/modules/ROOT/images/gl-preview/gitlab-preview-org-settings-people.png rename to archive/images/guides/modules/ROOT/images/gl-preview/gitlab-preview-org-settings-people.png diff --git a/docs/guides/modules/ROOT/images/gl-preview/gitlab-preview-project-settings-customize-triggers.png b/archive/images/guides/modules/ROOT/images/gl-preview/gitlab-preview-project-settings-customize-triggers.png similarity index 100% rename from docs/guides/modules/ROOT/images/gl-preview/gitlab-preview-project-settings-customize-triggers.png rename to archive/images/guides/modules/ROOT/images/gl-preview/gitlab-preview-project-settings-customize-triggers.png diff --git a/docs/guides/modules/ROOT/images/greenCheck.svg b/archive/images/guides/modules/ROOT/images/greenCheck.svg similarity index 100% rename from docs/guides/modules/ROOT/images/greenCheck.svg rename to archive/images/guides/modules/ROOT/images/greenCheck.svg diff --git a/docs/guides/modules/ROOT/images/ic-globe.svg b/archive/images/guides/modules/ROOT/images/ic-globe.svg similarity index 100% rename from docs/guides/modules/ROOT/images/ic-globe.svg rename to archive/images/guides/modules/ROOT/images/ic-globe.svg diff --git a/docs/guides/modules/ROOT/images/insights-1.0.gif b/archive/images/guides/modules/ROOT/images/insights-1.0.gif similarity index 100% rename from docs/guides/modules/ROOT/images/insights-1.0.gif rename to archive/images/guides/modules/ROOT/images/insights-1.0.gif diff --git a/docs/guides/modules/ROOT/images/insights-current-build.png b/archive/images/guides/modules/ROOT/images/insights-current-build.png similarity index 100% rename from docs/guides/modules/ROOT/images/insights-current-build.png rename to archive/images/guides/modules/ROOT/images/insights-current-build.png diff --git a/docs/guides/modules/ROOT/images/insights.png b/archive/images/guides/modules/ROOT/images/insights.png similarity index 100% rename from docs/guides/modules/ROOT/images/insights.png rename to archive/images/guides/modules/ROOT/images/insights.png diff --git a/docs/guides/modules/ROOT/images/ios-getting-started-manage-schemes.png b/archive/images/guides/modules/ROOT/images/ios-getting-started-manage-schemes.png similarity index 100% rename from docs/guides/modules/ROOT/images/ios-getting-started-manage-schemes.png rename to archive/images/guides/modules/ROOT/images/ios-getting-started-manage-schemes.png diff --git a/docs/guides/modules/ROOT/images/ios-getting-started-scheme-selector.png b/archive/images/guides/modules/ROOT/images/ios-getting-started-scheme-selector.png similarity index 100% rename from docs/guides/modules/ROOT/images/ios-getting-started-scheme-selector.png rename to archive/images/guides/modules/ROOT/images/ios-getting-started-scheme-selector.png diff --git a/docs/guides/modules/ROOT/images/jira_allow_app_access.png b/archive/images/guides/modules/ROOT/images/jira_allow_app_access.png similarity index 100% rename from docs/guides/modules/ROOT/images/jira_allow_app_access.png rename to archive/images/guides/modules/ROOT/images/jira_allow_app_access.png diff --git a/docs/guides/modules/ROOT/images/jira_get_org_id.png b/archive/images/guides/modules/ROOT/images/jira_get_org_id.png similarity index 100% rename from docs/guides/modules/ROOT/images/jira_get_org_id.png rename to archive/images/guides/modules/ROOT/images/jira_get_org_id.png diff --git a/docs/guides/modules/ROOT/images/job_status.png b/archive/images/guides/modules/ROOT/images/job_status.png similarity index 100% rename from docs/guides/modules/ROOT/images/job_status.png rename to archive/images/guides/modules/ROOT/images/job_status.png diff --git a/docs/guides/modules/ROOT/images/llmops/artifact.png b/archive/images/guides/modules/ROOT/images/llmops/artifact.png similarity index 100% rename from docs/guides/modules/ROOT/images/llmops/artifact.png rename to archive/images/guides/modules/ROOT/images/llmops/artifact.png diff --git a/docs/guides/modules/ROOT/images/metrics.png b/archive/images/guides/modules/ROOT/images/metrics.png similarity index 100% rename from docs/guides/modules/ROOT/images/metrics.png rename to archive/images/guides/modules/ROOT/images/metrics.png diff --git a/docs/guides/modules/ROOT/images/modal-bg-pattern.svg b/archive/images/guides/modules/ROOT/images/modal-bg-pattern.svg similarity index 100% rename from docs/guides/modules/ROOT/images/modal-bg-pattern.svg rename to archive/images/guides/modules/ROOT/images/modal-bg-pattern.svg diff --git a/docs/guides/modules/ROOT/images/notification-granting.gif b/archive/images/guides/modules/ROOT/images/notification-granting.gif similarity index 100% rename from docs/guides/modules/ROOT/images/notification-granting.gif rename to archive/images/guides/modules/ROOT/images/notification-granting.gif diff --git a/docs/guides/modules/ROOT/images/notifications-enable-web.png b/archive/images/guides/modules/ROOT/images/notifications-enable-web.png similarity index 100% rename from docs/guides/modules/ROOT/images/notifications-enable-web.png rename to archive/images/guides/modules/ROOT/images/notifications-enable-web.png diff --git a/docs/guides/modules/ROOT/images/org-centric-ui_newui.png b/archive/images/guides/modules/ROOT/images/org-centric-ui_newui.png similarity index 100% rename from docs/guides/modules/ROOT/images/org-centric-ui_newui.png rename to archive/images/guides/modules/ROOT/images/org-centric-ui_newui.png diff --git a/docs/guides/modules/ROOT/images/org-settings-with-orbs.png b/archive/images/guides/modules/ROOT/images/org-settings-with-orbs.png similarity index 100% rename from docs/guides/modules/ROOT/images/org-settings-with-orbs.png rename to archive/images/guides/modules/ROOT/images/org-settings-with-orbs.png diff --git a/docs/guides/modules/ROOT/images/pdf-header.png b/archive/images/guides/modules/ROOT/images/pdf-header.png similarity index 100% rename from docs/guides/modules/ROOT/images/pdf-header.png rename to archive/images/guides/modules/ROOT/images/pdf-header.png diff --git a/docs/guides/modules/ROOT/images/pipeline-breadcrumbs.png b/archive/images/guides/modules/ROOT/images/pipeline-breadcrumbs.png similarity index 100% rename from docs/guides/modules/ROOT/images/pipeline-breadcrumbs.png rename to archive/images/guides/modules/ROOT/images/pipeline-breadcrumbs.png diff --git a/docs/guides/modules/ROOT/images/pipelines-job-output.png b/archive/images/guides/modules/ROOT/images/pipelines-job-output.png similarity index 100% rename from docs/guides/modules/ROOT/images/pipelines-job-output.png rename to archive/images/guides/modules/ROOT/images/pipelines-job-output.png diff --git a/docs/guides/modules/ROOT/images/plan-settings.png b/archive/images/guides/modules/ROOT/images/plan-settings.png similarity index 100% rename from docs/guides/modules/ROOT/images/plan-settings.png rename to archive/images/guides/modules/ROOT/images/plan-settings.png diff --git a/docs/guides/modules/ROOT/images/project-notifications.png b/archive/images/guides/modules/ROOT/images/project-notifications.png similarity index 100% rename from docs/guides/modules/ROOT/images/project-notifications.png rename to archive/images/guides/modules/ROOT/images/project-notifications.png diff --git a/docs/guides/modules/ROOT/images/project-settings-cloud.png b/archive/images/guides/modules/ROOT/images/project-settings-cloud.png similarity index 100% rename from docs/guides/modules/ROOT/images/project-settings-cloud.png rename to archive/images/guides/modules/ROOT/images/project-settings-cloud.png diff --git a/docs/guides/modules/ROOT/images/project-settings-configuration.png b/archive/images/guides/modules/ROOT/images/project-settings-configuration.png similarity index 100% rename from docs/guides/modules/ROOT/images/project-settings-configuration.png rename to archive/images/guides/modules/ROOT/images/project-settings-configuration.png diff --git a/docs/guides/modules/ROOT/images/project-settings-pipelines.png b/archive/images/guides/modules/ROOT/images/project-settings-pipelines.png similarity index 100% rename from docs/guides/modules/ROOT/images/project-settings-pipelines.png rename to archive/images/guides/modules/ROOT/images/project-settings-pipelines.png diff --git a/docs/guides/modules/ROOT/images/project-settings-triggers.png b/archive/images/guides/modules/ROOT/images/project-settings-triggers.png similarity index 100% rename from docs/guides/modules/ROOT/images/project-settings-triggers.png rename to archive/images/guides/modules/ROOT/images/project-settings-triggers.png diff --git a/docs/guides/modules/ROOT/images/project.svg b/archive/images/guides/modules/ROOT/images/project.svg similarity index 100% rename from docs/guides/modules/ROOT/images/project.svg rename to archive/images/guides/modules/ROOT/images/project.svg diff --git a/docs/guides/modules/ROOT/images/reference.svg b/archive/images/guides/modules/ROOT/images/reference.svg similarity index 100% rename from docs/guides/modules/ROOT/images/reference.svg rename to archive/images/guides/modules/ROOT/images/reference.svg diff --git a/docs/guides/modules/ROOT/images/rerun-from-failed.png b/archive/images/guides/modules/ROOT/images/rerun-from-failed.png similarity index 100% rename from docs/guides/modules/ROOT/images/rerun-from-failed.png rename to archive/images/guides/modules/ROOT/images/rerun-from-failed.png diff --git a/docs/guides/modules/ROOT/images/resource-class-insights.png b/archive/images/guides/modules/ROOT/images/resource-class-insights.png similarity index 100% rename from docs/guides/modules/ROOT/images/resource-class-insights.png rename to archive/images/guides/modules/ROOT/images/resource-class-insights.png diff --git a/docs/guides/modules/ROOT/images/runnerui_step_five.png b/archive/images/guides/modules/ROOT/images/runnerui_step_five.png similarity index 100% rename from docs/guides/modules/ROOT/images/runnerui_step_five.png rename to archive/images/guides/modules/ROOT/images/runnerui_step_five.png diff --git a/docs/guides/modules/ROOT/images/runnerui_step_four.png b/archive/images/guides/modules/ROOT/images/runnerui_step_four.png similarity index 100% rename from docs/guides/modules/ROOT/images/runnerui_step_four.png rename to archive/images/guides/modules/ROOT/images/runnerui_step_four.png diff --git a/docs/guides/modules/ROOT/images/runnerui_step_four_cr.png b/archive/images/guides/modules/ROOT/images/runnerui_step_four_cr.png similarity index 100% rename from docs/guides/modules/ROOT/images/runnerui_step_four_cr.png rename to archive/images/guides/modules/ROOT/images/runnerui_step_four_cr.png diff --git a/docs/guides/modules/ROOT/images/runnerui_step_one.png b/archive/images/guides/modules/ROOT/images/runnerui_step_one.png similarity index 100% rename from docs/guides/modules/ROOT/images/runnerui_step_one.png rename to archive/images/guides/modules/ROOT/images/runnerui_step_one.png diff --git a/docs/guides/modules/ROOT/images/runnerui_step_three.png b/archive/images/guides/modules/ROOT/images/runnerui_step_three.png similarity index 100% rename from docs/guides/modules/ROOT/images/runnerui_step_three.png rename to archive/images/guides/modules/ROOT/images/runnerui_step_three.png diff --git a/docs/guides/modules/ROOT/images/runnerui_step_two.png b/archive/images/guides/modules/ROOT/images/runnerui_step_two.png similarity index 100% rename from docs/guides/modules/ROOT/images/runnerui_step_two.png rename to archive/images/guides/modules/ROOT/images/runnerui_step_two.png diff --git a/docs/guides/modules/ROOT/images/screen_github_checks_disable_new_ui.png b/archive/images/guides/modules/ROOT/images/screen_github_checks_disable_new_ui.png similarity index 100% rename from docs/guides/modules/ROOT/images/screen_github_checks_disable_new_ui.png rename to archive/images/guides/modules/ROOT/images/screen_github_checks_disable_new_ui.png diff --git a/docs/guides/modules/ROOT/images/screen_github_checks_new_ui.png b/archive/images/guides/modules/ROOT/images/screen_github_checks_new_ui.png similarity index 100% rename from docs/guides/modules/ROOT/images/screen_github_checks_new_ui.png rename to archive/images/guides/modules/ROOT/images/screen_github_checks_new_ui.png diff --git a/docs/guides/modules/ROOT/images/settings.png b/archive/images/guides/modules/ROOT/images/settings.png similarity index 100% rename from docs/guides/modules/ROOT/images/settings.png rename to archive/images/guides/modules/ROOT/images/settings.png diff --git a/docs/guides/modules/ROOT/images/standalone-project-slug.png b/archive/images/guides/modules/ROOT/images/standalone-project-slug.png similarity index 100% rename from docs/guides/modules/ROOT/images/standalone-project-slug.png rename to archive/images/guides/modules/ROOT/images/standalone-project-slug.png diff --git a/docs/guides/modules/ROOT/images/start.svg b/archive/images/guides/modules/ROOT/images/start.svg similarity index 100% rename from docs/guides/modules/ROOT/images/start.svg rename to archive/images/guides/modules/ROOT/images/start.svg diff --git a/docs/guides/modules/ROOT/images/tag.svg b/archive/images/guides/modules/ROOT/images/tag.svg similarity index 100% rename from docs/guides/modules/ROOT/images/tag.svg rename to archive/images/guides/modules/ROOT/images/tag.svg diff --git a/docs/guides/modules/ROOT/images/trigger-pipeline-popup.png b/archive/images/guides/modules/ROOT/images/trigger-pipeline-popup.png similarity index 100% rename from docs/guides/modules/ROOT/images/trigger-pipeline-popup.png rename to archive/images/guides/modules/ROOT/images/trigger-pipeline-popup.png diff --git a/docs/guides/modules/ROOT/images/triggers/custom-webhooks-secret-url.png b/archive/images/guides/modules/ROOT/images/triggers/custom-webhooks-secret-url.png similarity index 100% rename from docs/guides/modules/ROOT/images/triggers/custom-webhooks-secret-url.png rename to archive/images/guides/modules/ROOT/images/triggers/custom-webhooks-secret-url.png diff --git a/docs/guides/modules/ROOT/images/triggers/run-on-closed.png b/archive/images/guides/modules/ROOT/images/triggers/run-on-closed.png similarity index 100% rename from docs/guides/modules/ROOT/images/triggers/run-on-closed.png rename to archive/images/guides/modules/ROOT/images/triggers/run-on-closed.png diff --git a/docs/guides/modules/ROOT/images/triggers/run-on-open-focus.png b/archive/images/guides/modules/ROOT/images/triggers/run-on-open-focus.png similarity index 100% rename from docs/guides/modules/ROOT/images/triggers/run-on-open-focus.png rename to archive/images/guides/modules/ROOT/images/triggers/run-on-open-focus.png diff --git a/docs/guides/modules/ROOT/images/vs_code_extension_cci-commands-gif.gif b/archive/images/guides/modules/ROOT/images/vs_code_extension_cci-commands-gif.gif similarity index 100% rename from docs/guides/modules/ROOT/images/vs_code_extension_cci-commands-gif.gif rename to archive/images/guides/modules/ROOT/images/vs_code_extension_cci-commands-gif.gif diff --git a/docs/guides/modules/ROOT/images/vs_code_extension_select-project-optimised.gif b/archive/images/guides/modules/ROOT/images/vs_code_extension_select-project-optimised.gif similarity index 100% rename from docs/guides/modules/ROOT/images/vs_code_extension_select-project-optimised.gif rename to archive/images/guides/modules/ROOT/images/vs_code_extension_select-project-optimised.gif diff --git a/docs/guides/modules/ROOT/images/vs_code_extension_ssh-in-remote-window.gif b/archive/images/guides/modules/ROOT/images/vs_code_extension_ssh-in-remote-window.gif similarity index 100% rename from docs/guides/modules/ROOT/images/vs_code_extension_ssh-in-remote-window.gif rename to archive/images/guides/modules/ROOT/images/vs_code_extension_ssh-in-remote-window.gif diff --git a/docs/guides/modules/ROOT/images/vs_code_extension_ssh-in-terminal.gif b/archive/images/guides/modules/ROOT/images/vs_code_extension_ssh-in-terminal.gif similarity index 100% rename from docs/guides/modules/ROOT/images/vs_code_extension_ssh-in-terminal.gif rename to archive/images/guides/modules/ROOT/images/vs_code_extension_ssh-in-terminal.gif diff --git a/docs/guides/modules/ROOT/images/walkthrough6.png b/archive/images/guides/modules/ROOT/images/walkthrough6.png similarity index 100% rename from docs/guides/modules/ROOT/images/walkthrough6.png rename to archive/images/guides/modules/ROOT/images/walkthrough6.png diff --git a/docs/guides/modules/ROOT/images/walkthrough7.png b/archive/images/guides/modules/ROOT/images/walkthrough7.png similarity index 100% rename from docs/guides/modules/ROOT/images/walkthrough7.png rename to archive/images/guides/modules/ROOT/images/walkthrough7.png diff --git a/docs/guides/modules/ROOT/images/walkthrough8.png b/archive/images/guides/modules/ROOT/images/walkthrough8.png similarity index 100% rename from docs/guides/modules/ROOT/images/walkthrough8.png rename to archive/images/guides/modules/ROOT/images/walkthrough8.png diff --git a/docs/guides/modules/ROOT/images/web_ui_dashboard.png b/archive/images/guides/modules/ROOT/images/web_ui_dashboard.png similarity index 100% rename from docs/guides/modules/ROOT/images/web_ui_dashboard.png rename to archive/images/guides/modules/ROOT/images/web_ui_dashboard.png diff --git a/docs/guides/modules/ROOT/images/web_ui_projects.png b/archive/images/guides/modules/ROOT/images/web_ui_projects.png similarity index 100% rename from docs/guides/modules/ROOT/images/web_ui_projects.png rename to archive/images/guides/modules/ROOT/images/web_ui_projects.png diff --git a/docs/guides/modules/ROOT/images/web_ui_text_editor.png b/archive/images/guides/modules/ROOT/images/web_ui_text_editor.png similarity index 100% rename from docs/guides/modules/ROOT/images/web_ui_text_editor.png rename to archive/images/guides/modules/ROOT/images/web_ui_text_editor.png diff --git a/docs/guides/modules/ROOT/images/welcome.svg b/archive/images/guides/modules/ROOT/images/welcome.svg similarity index 100% rename from docs/guides/modules/ROOT/images/welcome.svg rename to archive/images/guides/modules/ROOT/images/welcome.svg diff --git a/docs/guides/modules/ROOT/images/workflow_detail.png b/archive/images/guides/modules/ROOT/images/workflow_detail.png similarity index 100% rename from docs/guides/modules/ROOT/images/workflow_detail.png rename to archive/images/guides/modules/ROOT/images/workflow_detail.png diff --git a/docs/server-admin-4.2/modules/air-gapped-installation/pages/phase-2-configure-object-storage.adoc b/docs/server-admin-4.2/modules/air-gapped-installation/pages/phase-2-configure-object-storage.adoc index fedc820957..5f694052c2 100644 --- a/docs/server-admin-4.2/modules/air-gapped-installation/pages/phase-2-configure-object-storage.adoc +++ b/docs/server-admin-4.2/modules/air-gapped-installation/pages/phase-2-configure-object-storage.adoc @@ -10,7 +10,7 @@ == 1. Create buckets in MinIO CircleCI server supports link:https://min.io/[MinIO] for air-gapped object storage. MinIO is used in the air-gapped environment as a replacement for cloud-based object storage, such as GCP GCS or AWS S3. With an air-gapped MinIO instance installed, complete the steps outlined in the next sections. -image::guides:ROOT:./minio/minio_install_0.png[Create a bucket in MinIO] +image::guides:ROOT:minio/minio_install_0.png[Create a bucket in MinIO] [#create-circleci-data-bucket] === a. Create a `circleci-data` bucket. @@ -18,13 +18,13 @@ Create a new bucket in MinIO named `circleci-data`. NOTE: This bucket can be given a different name, but references to it will need to be updated in the Helm `values.yaml` file. -image::guides:ROOT:./minio/minio_created_buckets.png[Buckets created in MinIO] +image::guides:ROOT:minio/minio_created_buckets.png[Buckets created in MinIO] [#configure-circleci-data-bucket] === b. Configure the `circleci-data` bucket. In the settings for the `circleci-data` bucket, change the access policy to `public`. -image::guides:ROOT:./minio/minio_modify_access_policy.png[Setting circleci-data bucket access policy to public] +image::guides:ROOT:minio/minio_modify_access_policy.png[Setting circleci-data bucket access policy to public] [#copy-circleci-build-agent] == 2. Copy the CircleCI build agent @@ -67,7 +67,7 @@ curl -O https://circleci-binary-releases.s3.amazonaws.com/circleci-agent/$CIRCLE === d. Create a release directory in the `circleci-data` bucket Using the version specified by `release.txt`, create a new directory in the root of the `circleci-data` bucket with the name of that release. In the following examples, a directory is created at the root of `circleci-data` in MinIO with the name `$CIRCLE_AGENT_VERSION`. Note `$CIRCLE_AGENT_VERSION` is not a literal string, but the value of the environment variable we set earlier. -image::guides:ROOT:./minio/minio_create_release_dir.png[Creating a directory in the circleci-data bucket] +image::guides:ROOT:minio/minio_create_release_dir.png[Creating a directory in the circleci-data bucket] [#upload-checksums-file] === e. Upload the checksums.txt file to the newly created directory. @@ -81,7 +81,7 @@ $CIRCLE_AGENT_VERSION/ └── checksums.txt ---- -image::guides:ROOT:./minio/minio_upload_checksums.png[Uploading checksums.txt into the release directory] +image::guides:ROOT:minio/minio_upload_checksums.png[Uploading checksums.txt into the release directory] [#create-new-subdirs] === f. Create two new subdirectories in the release directory @@ -96,9 +96,9 @@ $CIRCLE_AGENT_VERSION/ └── amd64/ ---- -image::guides:ROOT:./minio/minio_create_linux_dir.png[Creating a Linux dir] +image::guides:ROOT:minio/minio_create_linux_dir.png[Creating a Linux dir] -image::guides:ROOT:./minio/minio_create_amd_dir.png[Creating an AMD dir] +image::guides:ROOT:minio/minio_create_amd_dir.png[Creating an AMD dir] [#copy-build-agent-bin] === g. Copy the downloaded `circleci-agent` file @@ -114,7 +114,7 @@ $CIRCLE_AGENT_VERSION/ └── circleci-agent ---- -image::guides:ROOT:./minio/minio_upload_cci_agent.png[Uploading the CircleCI agent] +image::guides:ROOT:minio/minio_upload_cci_agent.png[Uploading the CircleCI agent] [#next-steps] == Next steps diff --git a/docs/server-admin-4.3/modules/air-gapped-installation/pages/phase-2-configure-object-storage.adoc b/docs/server-admin-4.3/modules/air-gapped-installation/pages/phase-2-configure-object-storage.adoc index c8602da841..c126748249 100644 --- a/docs/server-admin-4.3/modules/air-gapped-installation/pages/phase-2-configure-object-storage.adoc +++ b/docs/server-admin-4.3/modules/air-gapped-installation/pages/phase-2-configure-object-storage.adoc @@ -8,7 +8,7 @@ == 1. Create buckets in MinIO CircleCI server supports link:https://min.io/[MinIO] for air-gapped object storage. MinIO is used in the air-gapped environment as a replacement for cloud-based object storage, such as GCP GCS or AWS S3. With an air-gapped MinIO instance installed, complete the steps outlined in the next sections. -image::guides:ROOT:./minio/minio_install_0.png[Create a bucket in MinIO] +image::guides:ROOT:minio/minio_install_0.png[Create a bucket in MinIO] [#create-circleci-data-bucket] === a. Create a `circleci-data` bucket @@ -16,13 +16,13 @@ Create a new bucket in MinIO named `circleci-data`. NOTE: This bucket can be given a different name, but references to it will need to be updated in the Helm `values.yaml` file. -image::guides:ROOT:./minio/minio_created_buckets.png[Buckets created in MinIO] +image::guides:ROOT:minio/minio_created_buckets.png[Buckets created in MinIO] [#configure-circleci-data-bucket] === b. Configure the `circleci-data` bucket In the settings for the `circleci-data` bucket, change the access policy to `public`. -image::guides:ROOT:./minio/minio_modify_access_policy.png[Setting circleci-data bucket access policy to public] +image::guides:ROOT:minio/minio_modify_access_policy.png[Setting circleci-data bucket access policy to public] [#copy-circleci-build-agent] == 2. Copy the CircleCI build agent @@ -65,7 +65,7 @@ curl -O https://circleci-binary-releases.s3.amazonaws.com/circleci-agent/$CIRCLE === d. Create a release directory in the `circleci-data` bucket Using the version specified by `release.txt`, create a new directory in the root of the `circleci-data` bucket with the name of that release. In the following examples, a directory is created at the root of `circleci-data` in MinIO with the name `$CIRCLE_AGENT_VERSION`. Note `$CIRCLE_AGENT_VERSION` is not a literal string, but the value of the environment variable we set earlier. -image::guides:ROOT:./minio/minio_create_release_dir.png[Creating a directory in the circleci-data bucket] +image::guides:ROOT:minio/minio_create_release_dir.png[Creating a directory in the circleci-data bucket] [#upload-checksums-file] === e. Upload the checksums.txt file to the newly created directory. @@ -79,7 +79,7 @@ $CIRCLE_AGENT_VERSION/ └── checksums.txt ---- -image::guides:ROOT:./minio/minio_upload_checksums.png[Uploading checksums.txt into the release directory] +image::guides:ROOT:minio/minio_upload_checksums.png[Uploading checksums.txt into the release directory] [#create-new-subdirs] === f. Create two new subdirectories in the release directory @@ -94,9 +94,9 @@ $CIRCLE_AGENT_VERSION/ └── amd64/ ---- -image::guides:ROOT:./minio/minio_create_linux_dir.png[Creating a Linux dir] +image::guides:ROOT:minio/minio_create_linux_dir.png[Creating a Linux dir] -image::guides:ROOT:./minio/minio_create_amd_dir.png[Creating an AMD dir] +image::guides:ROOT:minio/minio_create_amd_dir.png[Creating an AMD dir] [#copy-build-agent-bin] === g. Copy the downloaded `circleci-agent` file @@ -112,7 +112,7 @@ $CIRCLE_AGENT_VERSION/ └── circleci-agent ---- -image::guides:ROOT:./minio/minio_upload_cci_agent.png[Uploading the CircleCI agent] +image::guides:ROOT:minio/minio_upload_cci_agent.png[Uploading the CircleCI agent] [#next-steps] == Next steps diff --git a/docs/server-admin-4.4/modules/air-gapped-installation/pages/phase-2-configure-object-storage.adoc b/docs/server-admin-4.4/modules/air-gapped-installation/pages/phase-2-configure-object-storage.adoc index 212552931e..bd7cf3a466 100644 --- a/docs/server-admin-4.4/modules/air-gapped-installation/pages/phase-2-configure-object-storage.adoc +++ b/docs/server-admin-4.4/modules/air-gapped-installation/pages/phase-2-configure-object-storage.adoc @@ -12,7 +12,7 @@ pass:[] == 1. Create buckets in MinIO CircleCI server supports link:https://min.io/[MinIO] for air-gapped object storage. MinIO is used in the air-gapped environment as a replacement for cloud-based object storage, such as GCP GCS or AWS S3. With an air-gapped MinIO instance installed, complete the steps outlined in the next sections. -image::guides:ROOT:./minio/minio_install_0.png[Create a bucket in MinIO] +image::guides:ROOT:minio/minio_install_0.png[Create a bucket in MinIO] [#creates-data-bucket] === a. Create a `circleci-data` bucket. @@ -20,13 +20,13 @@ Create a new bucket in MinIO named `circleci-data`. NOTE: This bucket can be given a different name, but references to it will need to be updated in the Helm `values.yaml` file. -image::guides:ROOT:./minio/minio_created_buckets.png[Buckets created in MinIO] +image::guides:ROOT:minio/minio_created_buckets.png[Buckets created in MinIO] [#configure-data-bucket] === b. Configure the `circleci-data` bucket In the settings for the `circleci-data` bucket, change the access policy to `public`. -image::guides:ROOT:./minio/minio_modify_access_policy.png[Setting `circleci-data` bucket access policy to public] +image::guides:ROOT:minio/minio_modify_access_policy.png[Setting `circleci-data` bucket access policy to public] [#copy-build-agent] == 2. Copy the CircleCI build agent @@ -69,7 +69,7 @@ curl -O https://circleci-binary-releases.s3.amazonaws.com/circleci-agent/$CIRCLE === d. Create a release directory in the `circleci-data` bucket Using the version specified by `release.txt`, create a new directory in the root of the `circleci-data` bucket with the name of that release. In the following examples, a directory is created at the root of `circleci-data` in MinIO with the name `$CIRCLE_AGENT_VERSION`. Note `$CIRCLE_AGENT_VERSION` is not a literal string, but the value of the environment variable we set earlier. -image::guides:ROOT:./minio/minio_create_release_dir.png[Creating a directory in the `circleci-data` bucket] +image::guides:ROOT:minio/minio_create_release_dir.png[Creating a directory in the `circleci-data` bucket] [#upload-checksums-file] === e. Upload the checksums.txt file to the newly created directory. @@ -83,7 +83,7 @@ $CIRCLE_AGENT_VERSION/ └── checksums.txt ---- -image::guides:ROOT:./minio/minio_upload_checksums.png[Uploading `checksums.txt` into the release directory] +image::guides:ROOT:minio/minio_upload_checksums.png[Uploading `checksums.txt` into the release directory] [#create-new-subdirs] === f. Create two new subdirectories in the release directory @@ -98,9 +98,9 @@ $CIRCLE_AGENT_VERSION/ └── amd64/ ---- -image::guides:ROOT:./minio/minio_create_linux_dir.png[Creating a Linux dir] +image::guides:ROOT:minio/minio_create_linux_dir.png[Creating a Linux dir] -image::guides:ROOT:./minio/minio_create_amd_dir.png[Creating an AMD dir] +image::guides:ROOT:minio/minio_create_amd_dir.png[Creating an AMD dir] [#copy-build-agent-bin] === g. Copy the downloaded `circleci-agent` file @@ -116,7 +116,7 @@ CIRCLE_AGENT_VERSION/ └── circleci-agent ---- -image::guides:ROOT:./minio/minio_upload_cci_agent.png[Uploading the CircleCI agent] +image::guides:ROOT:minio/minio_upload_cci_agent.png[Uploading the CircleCI agent] [#copy-other-agents] == 3. Copy other agents diff --git a/docs/server-admin-4.5/modules/air-gapped-installation/pages/phase-2-configure-object-storage.adoc b/docs/server-admin-4.5/modules/air-gapped-installation/pages/phase-2-configure-object-storage.adoc index 6612b91d7e..98e8631c2a 100644 --- a/docs/server-admin-4.5/modules/air-gapped-installation/pages/phase-2-configure-object-storage.adoc +++ b/docs/server-admin-4.5/modules/air-gapped-installation/pages/phase-2-configure-object-storage.adoc @@ -12,7 +12,7 @@ pass:[] == 1. Create buckets in MinIO CircleCI server supports link:https://min.io/[MinIO] for air-gapped object storage. MinIO is used in the air-gapped environment as a replacement for cloud-based object storage, such as GCP GCS or AWS S3. With an air-gapped MinIO instance installed, complete the steps outlined in the next sections. -image::guides:ROOT:./minio/minio_install_0.png[Create a bucket in MinIO] +image::guides:ROOT:minio/minio_install_0.png[Create a bucket in MinIO] [#creates-data-bucket] === a. Create a `circleci-data` bucket. @@ -20,13 +20,13 @@ Create a new bucket in MinIO named `circleci-data`. NOTE: This bucket can be given a different name, but references to it will need to be updated in the Helm `values.yaml` file. -image::guides:ROOT:./minio/minio_created_buckets.png[Buckets created in MinIO] +image::guides:ROOT:minio/minio_created_buckets.png[Buckets created in MinIO] [#configure-data-bucket] === b. Configure the `circleci-data` bucket In the settings for the `circleci-data` bucket, change the access policy to `public`. -image::guides:ROOT:./minio/minio_modify_access_policy.png[Setting `circleci-data` bucket access policy to public] +image::guides:ROOT:minio/minio_modify_access_policy.png[Setting `circleci-data` bucket access policy to public] [#copy-build-agent] == 2. Copy the CircleCI build agent @@ -69,7 +69,7 @@ curl -O https://circleci-binary-releases.s3.amazonaws.com/circleci-agent/$CIRCLE === d. Create a release directory in the `circleci-data` bucket Using the version specified by `release.txt`, create a new directory in the root of the `circleci-data` bucket with the name of that release. In the following examples, a directory is created at the root of `circleci-data` in MinIO with the name `$CIRCLE_AGENT_VERSION`. Note `$CIRCLE_AGENT_VERSION` is not a literal string, but the value of the environment variable we set earlier. -image::guides:ROOT:./minio/minio_create_release_dir.png[Creating a directory in the `circleci-data` bucket] +image::guides:ROOT:minio/minio_create_release_dir.png[Creating a directory in the `circleci-data` bucket] [#upload-checksums-file] === e. Upload the checksums.txt file to the newly created directory. @@ -83,7 +83,7 @@ $CIRCLE_AGENT_VERSION/ └── checksums.txt ---- -image::guides:ROOT:./minio/minio_upload_checksums.png[Uploading `checksums.txt` into the release directory] +image::guides:ROOT:minio/minio_upload_checksums.png[Uploading `checksums.txt` into the release directory] [#create-new-subdirs] === f. Create two new subdirectories in the release directory @@ -98,9 +98,9 @@ $CIRCLE_AGENT_VERSION/ └── amd64/ ---- -image::guides:ROOT:./minio/minio_create_linux_dir.png[Creating a Linux dir] +image::guides:ROOT:minio/minio_create_linux_dir.png[Creating a Linux dir] -image::guides:ROOT:./minio/minio_create_amd_dir.png[Creating an AMD dir] +image::guides:ROOT:minio/minio_create_amd_dir.png[Creating an AMD dir] [#copy-build-agent-bin] === g. Copy the downloaded `circleci-agent` file @@ -116,7 +116,7 @@ CIRCLE_AGENT_VERSION/ └── circleci-agent ---- -image::guides:ROOT:./minio/minio_upload_cci_agent.png[Uploading the CircleCI agent] +image::guides:ROOT:minio/minio_upload_cci_agent.png[Uploading the CircleCI agent] [#copy-other-agents] == 3. Copy other agents diff --git a/docs/server-admin-4.6/modules/air-gapped-installation/pages/phase-2-configure-object-storage.adoc b/docs/server-admin-4.6/modules/air-gapped-installation/pages/phase-2-configure-object-storage.adoc index e7f099b211..d032401251 100644 --- a/docs/server-admin-4.6/modules/air-gapped-installation/pages/phase-2-configure-object-storage.adoc +++ b/docs/server-admin-4.6/modules/air-gapped-installation/pages/phase-2-configure-object-storage.adoc @@ -12,7 +12,7 @@ pass:[] == 1. Create buckets in MinIO CircleCI server supports link:https://min.io/[MinIO] for air-gapped object storage. MinIO is used in the air-gapped environment as a replacement for cloud-based object storage, such as GCP GCS or AWS S3. With an air-gapped MinIO instance installed, complete the steps outlined in the next sections. -image::guides:ROOT:./minio/minio_install_0.png[Create a bucket in MinIO] +image::guides:ROOT:minio/minio_install_0.png[Create a bucket in MinIO] [#creates-data-bucket] === a. Create a `circleci-data` bucket. @@ -20,13 +20,13 @@ Create a new bucket in MinIO named `circleci-data`. NOTE: This bucket can be given a different name, but references to it will need to be updated in the Helm `values.yaml` file. -image::guides:ROOT:./minio/minio_created_buckets.png[Buckets created in MinIO] +image::guides:ROOT:minio/minio_created_buckets.png[Buckets created in MinIO] [#configure-data-bucket] === b. Configure the `circleci-data` bucket In the settings for the `circleci-data` bucket, change the access policy to `public`. -image::guides:ROOT:./minio/minio_modify_access_policy.png[Setting `circleci-data` bucket access policy to public] +image::guides:ROOT:minio/minio_modify_access_policy.png[Setting `circleci-data` bucket access policy to public] [#copy-build-agent] == 2. Copy the CircleCI build agent @@ -69,7 +69,7 @@ curl -O https://circleci-binary-releases.s3.amazonaws.com/circleci-agent/$CIRCLE === d. Create a release directory in the `circleci-data` bucket Using the version specified by `release.txt`, create a new directory in the root of the `circleci-data` bucket with the name of that release. In the following examples, a directory is created at the root of `circleci-data` in MinIO with the name `$CIRCLE_AGENT_VERSION`. Note `$CIRCLE_AGENT_VERSION` is not a literal string, but the value of the environment variable we set earlier. -image::guides:ROOT:./minio/minio_create_release_dir.png[Creating a directory in the `circleci-data` bucket] +image::guides:ROOT:minio/minio_create_release_dir.png[Creating a directory in the `circleci-data` bucket] [#upload-checksums-file] === e. Upload the checksums.txt file to the newly created directory. @@ -83,7 +83,7 @@ $CIRCLE_AGENT_VERSION/ └── checksums.txt ---- -image::guides:ROOT:./minio/minio_upload_checksums.png[Uploading `checksums.txt` into the release directory] +image::guides:ROOT:minio/minio_upload_checksums.png[Uploading `checksums.txt` into the release directory] [#create-new-subdirs] === f. Create two new subdirectories in the release directory @@ -98,9 +98,9 @@ $CIRCLE_AGENT_VERSION/ └── amd64/ ---- -image::guides:ROOT:./minio/minio_create_linux_dir.png[Creating a Linux dir] +image::guides:ROOT:minio/minio_create_linux_dir.png[Creating a Linux dir] -image::guides:ROOT:./minio/minio_create_amd_dir.png[Creating an AMD dir] +image::guides:ROOT:minio/minio_create_amd_dir.png[Creating an AMD dir] [#copy-build-agent-bin] === g. Copy the downloaded `circleci-agent` file @@ -116,7 +116,7 @@ CIRCLE_AGENT_VERSION/ └── circleci-agent ---- -image::guides:ROOT:./minio/minio_upload_cci_agent.png[Uploading the CircleCI agent] +image::guides:ROOT:minio/minio_upload_cci_agent.png[Uploading the CircleCI agent] [#copy-other-agents] == 3. Copy other agents diff --git a/docs/server-admin-4.7/modules/air-gapped-installation/pages/phase-2-configure-object-storage.adoc b/docs/server-admin-4.7/modules/air-gapped-installation/pages/phase-2-configure-object-storage.adoc index b62f324a58..521c839f98 100644 --- a/docs/server-admin-4.7/modules/air-gapped-installation/pages/phase-2-configure-object-storage.adoc +++ b/docs/server-admin-4.7/modules/air-gapped-installation/pages/phase-2-configure-object-storage.adoc @@ -12,7 +12,7 @@ pass:[] == 1. Create buckets in MinIO CircleCI server supports link:https://min.io/[MinIO] for air-gapped object storage. MinIO is used in the air-gapped environment as a replacement for cloud-based object storage, such as GCP GCS or AWS S3. With an air-gapped MinIO instance installed, complete the steps outlined in the next sections. -image::guides:ROOT:./minio/minio_install_0.png[Create a bucket in MinIO] +image::guides:ROOT:minio/minio_install_0.png[Create a bucket in MinIO] [#creates-data-bucket] === a. Create a `circleci-data` bucket. @@ -20,13 +20,13 @@ Create a new bucket in MinIO named `circleci-data`. NOTE: This bucket can be given a different name, but references to it will need to be updated in the Helm `values.yaml` file. -image::guides:ROOT:./minio/minio_created_buckets.png[Buckets created in MinIO] +image::guides:ROOT:minio/minio_created_buckets.png[Buckets created in MinIO] [#configure-data-bucket] === b. Configure the `circleci-data` bucket In the settings for the `circleci-data` bucket, change the access policy to `public`. -image::guides:ROOT:./minio/minio_modify_access_policy.png[Setting `circleci-data` bucket access policy to public] +image::guides:ROOT:minio/minio_modify_access_policy.png[Setting `circleci-data` bucket access policy to public] [#copy-build-agent] == 2. Copy the CircleCI build agent @@ -69,7 +69,7 @@ curl -O https://circleci-binary-releases.s3.amazonaws.com/circleci-agent/$CIRCLE === d. Create a release directory in the `circleci-data` bucket Using the version specified by `release.txt`, create a new directory in the root of the `circleci-data` bucket with the name of that release. In the following examples, a directory is created at the root of `circleci-data` in MinIO with the name `$CIRCLE_AGENT_VERSION`. Note `$CIRCLE_AGENT_VERSION` is not a literal string, but the value of the environment variable we set earlier. -image::guides:ROOT:./minio/minio_create_release_dir.png[Creating a directory in the `circleci-data` bucket] +image::guides:ROOT:minio/minio_create_release_dir.png[Creating a directory in the `circleci-data` bucket] [#upload-checksums-file] === e. Upload the checksums.txt file to the newly created directory. @@ -83,7 +83,7 @@ $CIRCLE_AGENT_VERSION/ └── checksums.txt ---- -image::guides:ROOT:./minio/minio_upload_checksums.png[Uploading `checksums.txt` into the release directory] +image::guides:ROOT:minio/minio_upload_checksums.png[Uploading `checksums.txt` into the release directory] [#create-new-subdirs] === f. Create two new subdirectories in the release directory @@ -98,9 +98,9 @@ $CIRCLE_AGENT_VERSION/ └── amd64/ ---- -image::guides:ROOT:./minio/minio_create_linux_dir.png[Creating a Linux dir] +image::guides:ROOT:minio/minio_create_linux_dir.png[Creating a Linux dir] -image::guides:ROOT:./minio/minio_create_amd_dir.png[Creating an AMD dir] +image::guides:ROOT:minio/minio_create_amd_dir.png[Creating an AMD dir] [#copy-build-agent-bin] === g. Copy the downloaded `circleci-agent` file @@ -116,7 +116,7 @@ CIRCLE_AGENT_VERSION/ └── circleci-agent ---- -image::guides:ROOT:./minio/minio_upload_cci_agent.png[Uploading the CircleCI agent] +image::guides:ROOT:minio/minio_upload_cci_agent.png[Uploading the CircleCI agent] [#copy-other-agents] == 3. Copy other agents diff --git a/docs/server-admin-4.8/modules/air-gapped-installation/pages/phase-2-configure-object-storage.adoc b/docs/server-admin-4.8/modules/air-gapped-installation/pages/phase-2-configure-object-storage.adoc index 51aa9cb694..83af1e61e9 100644 --- a/docs/server-admin-4.8/modules/air-gapped-installation/pages/phase-2-configure-object-storage.adoc +++ b/docs/server-admin-4.8/modules/air-gapped-installation/pages/phase-2-configure-object-storage.adoc @@ -8,7 +8,7 @@ pass:[] == 1. Create buckets in MinIO CircleCI server supports link:https://min.io/[MinIO] for air-gapped object storage. MinIO is used in the air-gapped environment as a replacement for cloud-based object storage, such as GCP GCS or AWS S3. With an air-gapped MinIO instance installed, complete the steps outlined in the next sections. -image::guides:ROOT:./minio/minio_install_0.png[Create a bucket in MinIO] +image::guides:ROOT:minio/minio_install_0.png[Create a bucket in MinIO] [#creates-data-bucket] === a. Create a `circleci-data` bucket. @@ -16,13 +16,13 @@ Create a new bucket in MinIO named `circleci-data`. NOTE: This bucket can be given a different name, but references to it will need to be updated in the Helm `values.yaml` file. -image::guides:ROOT:./minio/minio_created_buckets.png[Buckets created in MinIO] +image::guides:ROOT:minio/minio_created_buckets.png[Buckets created in MinIO] [#configure-data-bucket] === b. Configure the `circleci-data` bucket In the settings for the `circleci-data` bucket, change the access policy to `public`. -image::guides:ROOT:./minio/minio_modify_access_policy.png[Setting `circleci-data` bucket access policy to public] +image::guides:ROOT:minio/minio_modify_access_policy.png[Setting `circleci-data` bucket access policy to public] [#copy-build-agent] == 2. Copy the CircleCI build agent @@ -65,7 +65,7 @@ curl -O https://circleci-binary-releases.s3.amazonaws.com/circleci-agent/$CIRCLE === d. Create a release directory in the `circleci-data` bucket Using the version specified by `release.txt`, create a new directory in the root of the `circleci-data` bucket with the name of that release. In the following examples, a directory is created at the root of `circleci-data` in MinIO with the name `$CIRCLE_AGENT_VERSION`. Note `$CIRCLE_AGENT_VERSION` is not a literal string, but the value of the environment variable we set earlier. -image::guides:ROOT:./minio/minio_create_release_dir.png[Creating a directory in the `circleci-data` bucket] +image::guides:ROOT:minio/minio_create_release_dir.png[Creating a directory in the `circleci-data` bucket] [#upload-checksums-file] === e. Upload the checksums.txt file to the newly created directory. @@ -79,7 +79,7 @@ $CIRCLE_AGENT_VERSION/ └── checksums.txt ---- -image::guides:ROOT:./minio/minio_upload_checksums.png[Uploading `checksums.txt` into the release directory] +image::guides:ROOT:minio/minio_upload_checksums.png[Uploading `checksums.txt` into the release directory] [#create-new-subdirs] === f. Create two new subdirectories in the release directory @@ -94,9 +94,9 @@ $CIRCLE_AGENT_VERSION/ └── amd64/ ---- -image::guides:ROOT:./minio/minio_create_linux_dir.png[Creating a Linux dir] +image::guides:ROOT:minio/minio_create_linux_dir.png[Creating a Linux dir] -image::guides:ROOT:./minio/minio_create_amd_dir.png[Creating an AMD dir] +image::guides:ROOT:minio/minio_create_amd_dir.png[Creating an AMD dir] [#copy-build-agent-bin] === g. Copy the downloaded `circleci-agent` file @@ -112,7 +112,7 @@ CIRCLE_AGENT_VERSION/ └── circleci-agent ---- -image::guides:ROOT:./minio/minio_upload_cci_agent.png[Uploading the CircleCI agent] +image::guides:ROOT:minio/minio_upload_cci_agent.png[Uploading the CircleCI agent] [#copy-other-agents] == 3. Copy other agents diff --git a/extensions/detect-unused-media-extension.js b/extensions/detect-unused-media-extension.js new file mode 100644 index 0000000000..213ae4fa10 --- /dev/null +++ b/extensions/detect-unused-media-extension.js @@ -0,0 +1,154 @@ +/** + * Registers the detect-unused-media extension. + * Modified to properly handle cross-component image references (component:module:path format). + * + * @param {Object} config - The configuration object. + * @param {Array} [config.excludeimageextension] - List of image extensions to exclude from detection. + */ +module.exports.register = function ({ config }) { + const logger = this.getLogger("detect-unused-media"); + logger.info("Starting detection of unused media..."); + + config && Object.keys(config).length + ? logger.info( + "Override default configuration with %s", + JSON.stringify(config, null, 2), + ) + : logger.info("Use the default configuration"); + + this.once("contentClassified", ({ contentCatalog }) => { + // Initialize the set of extensions to ignore, including '.cast' + let extensionToIgnore = new Set([".cast"]); + + // If config.excludeimageextension is provided, merge it with the default extensions to ignore + if (config.excludeimageextension) { + extensionToIgnore = new Set([ + ...config.excludeimageextension, + ...extensionToIgnore, + ]); + } + + logger.info( + "Assets with extensions will be ignored %s", + Array.from(extensionToIgnore), + ); + + const imageReferences = extractMediaReferences(contentCatalog, logger); + + const unusedMedia = findUnusedMedia( + contentCatalog, + imageReferences, + extensionToIgnore, + logger, + ); + + logger.info("Detection of unused media is now complete."); + if (unusedMedia.size > 0) { + logger.warn( + "Some media are unused, check previous logs and delete unused media.", + ); + } + }); +} + +function extractMediaReferences(contentCatalog, logger) { + const mediaReferences = new Set(); + const families = ["page", "partial"]; + + contentCatalog + .getFiles() + .filter((file) => families.includes(file.src.family)) + .forEach((file) => { + try { + if (file.contents) { + // Match AsciiDoc image/video references: + // - Block images: image::path[alt] or video::path[alt] + // - Inline images: image:path[alt] or video:path[alt] + // But NOT YAML keys like "image: docker/image:tag" + // The regex looks for image/video followed by : or :: and then captures non-whitespace until [ or end of line + const mediaMatches = + file.contents.toString().match(/(image|video)::?(\S+?)(?:\[|$)/gm) || []; + mediaMatches.forEach((match) => { + let imagePath = match.replace(/(image|video)::?/g, "").replace(/\[.*$/, "").trim(); + + // Skip if this looks like a Docker image reference (contains / or ends with version tag) + // Docker images are typically like: "cimg/base:2021.04" or "python:3.6.3" + if (imagePath.match(/^[a-z0-9-]+\/[a-z0-9-]+:|^[a-z0-9-]+:[0-9]/)) { + return; // Skip Docker images + } + + mediaReferences.add(imagePath); + }); + } + } catch (error) { + logger.fatal( + "%s (%s) - %s", + file.src.component, + file.src.version, + file.src.basename, + ); + logger.fatal(error); + } + }); + + logger.info("Found %s media references", mediaReferences.size); + return mediaReferences; +} + +function findUnusedMedia( + contentCatalog, + mediaReferences, + extensionToIgnore, + logger, +) { + const unusedMedia = new Set(); + contentCatalog + .getFiles() + .filter( + (file) => + file.src.family === "image" && !extensionToIgnore.has(file.src.extname), + ) + .forEach((img) => { + // In AsciiDoc/Antora, images can be referenced with or without the "images/" directory prefix + // because images/ is the implicit default directory for image family files. + // + // For a file at: modules/ROOT/images/myImage.png + // It can be referenced as: + // 1. images/myImage.png (with images/ prefix) + // 2. myImage.png (without images/ prefix - implicit) + // 3. ROOT:images/myImage.png (module-qualified with images/) + // 4. ROOT:myImage.png (module-qualified without images/) + // 5. guides:ROOT:images/myImage.png (component-qualified with images/) + // 6. guides:ROOT:myImage.png (component-qualified without images/) + + const relativePath = img.src.relative.toString(); // e.g., "images/myImage.png" + const moduleQualifiedPath = img.src.module + ":" + relativePath; + const componentQualifiedPath = img.src.component + ":" + img.src.module + ":" + relativePath; + + // Also check without the "images/" prefix (implicit in AsciiDoc references) + const relativePathWithoutImagesDir = relativePath.replace(/^images\//, ''); + const moduleQualifiedPathWithoutImagesDir = img.src.module + ":" + relativePathWithoutImagesDir; + const componentQualifiedPathWithoutImagesDir = img.src.component + ":" + img.src.module + ":" + relativePathWithoutImagesDir; + + const isUsed = + mediaReferences.has(relativePath) || + mediaReferences.has(moduleQualifiedPath) || + mediaReferences.has(componentQualifiedPath) || + mediaReferences.has(relativePathWithoutImagesDir) || + mediaReferences.has(moduleQualifiedPathWithoutImagesDir) || + mediaReferences.has(componentQualifiedPathWithoutImagesDir); + + if (!isUsed) { + unusedMedia.add(img); + logger.warn( + "[%s] [%s] %s", + img.src.component, + img.src.version, + img.src.path, + ); + } + }); + logger.info("Finish and detecting %s unused media", unusedMedia.size); + return unusedMedia; +} + diff --git a/package-lock.json b/package-lock.json index b266a154d3..a963db048d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,6 +9,7 @@ "version": "1.0.0", "dependencies": { "@asciidoctor/tabs": "^1.0.0-beta.6", + "@bonitasoft/antora-detect-unused-media-extension": "^1.0.0", "algoliasearch": "^5.25.0", "node-html-parser": "^7.0.1", "reading-time": "^1.5.0" @@ -223,7 +224,6 @@ "version": "3.1.14", "resolved": "https://registry.npmjs.org/@antora/asciidoc-loader/-/asciidoc-loader-3.1.14.tgz", "integrity": "sha512-4xxisnoBFrlLNY6f3xZtyyfgm+tBLsqesTcEStfc8jtXUMYJ4b2DWIzo1vULmxvZ7yY5+Q7YqEvS5o6kIWAG0A==", - "dev": true, "license": "MPL-2.0", "dependencies": { "@antora/logger": "3.1.14", @@ -284,7 +284,6 @@ "version": "3.1.14", "resolved": "https://registry.npmjs.org/@antora/content-classifier/-/content-classifier-3.1.14.tgz", "integrity": "sha512-y8Fk+KU1lqD3aawOu3ZFK92YfOZ1k3YBJhLI9QIFM6Ck4STPnf7AwYbhfOtjODlwer5/OhFmfhjUB2hn7onGnA==", - "dev": true, "license": "MPL-2.0", "dependencies": { "@antora/asciidoc-loader": "3.1.14", @@ -313,7 +312,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/@antora/expand-path-helper/-/expand-path-helper-3.0.0.tgz", "integrity": "sha512-7PdEIhk97v85/CSm3HynCsX14TR6oIVz1s233nNLsiWubE8tTnpPt4sNRJR+hpmIZ6Bx9c6QDp3XIoiyu/WYYA==", - "dev": true, "license": "MPL-2.0", "engines": { "node": ">=16.0.0" @@ -339,7 +337,6 @@ "version": "3.1.14", "resolved": "https://registry.npmjs.org/@antora/logger/-/logger-3.1.14.tgz", "integrity": "sha512-kVEeGqZbXR903hPIm+BlN97fLdQ3LoUzE/BOPZ6vRp9m9Mmbnm67Kg7fSYkfTMLB0S2UWpAPFg22RdsU5ZoAzA==", - "dev": true, "license": "MPL-2.0", "dependencies": { "@antora/expand-path-helper": "~3.0", @@ -488,7 +485,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/@antora/user-require-helper/-/user-require-helper-3.0.0.tgz", "integrity": "sha512-KIXb8WYhnrnwH7Jj21l1w+et9k5GvcgcqvLOwxqWLEd0uVZOiMFdqFjqbVm3M+zcrs1JXWMeh2LLvxBbQs3q/Q==", - "dev": true, "license": "MPL-2.0", "dependencies": { "@antora/expand-path-helper": "~3.0" @@ -501,7 +497,6 @@ "version": "2.2.8", "resolved": "https://registry.npmjs.org/@asciidoctor/core/-/core-2.2.8.tgz", "integrity": "sha512-oozXk7ZO1RAd/KLFLkKOhqTcG4GO3CV44WwOFg2gMcCsqCUTarvMT7xERIoWW2WurKbB0/ce+98r01p8xPOlBw==", - "dev": true, "license": "MIT", "dependencies": { "asciidoctor-opal-runtime": "0.3.3", @@ -554,6 +549,15 @@ "node": ">=6.9.0" } }, + "node_modules/@bonitasoft/antora-detect-unused-media-extension": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@bonitasoft/antora-detect-unused-media-extension/-/antora-detect-unused-media-extension-1.0.0.tgz", + "integrity": "sha512-rFAmbsN6DsuMo0UC2jI+84pkltxbHooKGrjy1uodMDGvocz2M4/ZLJtWv54fq0Z1Et2DDp7+XNVWvZqKe1qfmA==", + "license": "MIT", + "dependencies": { + "@antora/content-classifier": "^3.0.0" + } + }, "node_modules/@dotenvx/dotenvx": { "version": "1.51.1", "resolved": "https://registry.npmjs.org/@dotenvx/dotenvx/-/dotenvx-1.51.1.tgz", @@ -801,7 +805,6 @@ "integrity": "sha512-2I0gnIVPtfnMw9ee9h1dJG7tp81+8Ob3OJb3Mv37rx5L40/b0i7djjCVvGOVqc9AEIQyvyu1i6ypKdFw8R8gQw==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": "^14.21.3 || >=16" }, @@ -881,7 +884,6 @@ "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.9.0.tgz", "integrity": "sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg==", "dev": true, - "peer": true, "engines": { "node": ">=8.0.0" } @@ -1527,7 +1529,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", - "dev": true, "license": "MIT", "dependencies": { "event-target-shim": "^5.0.0" @@ -1564,7 +1565,6 @@ "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", "dev": true, - "peer": true, "dependencies": { "fast-deep-equal": "^3.1.3", "fast-uri": "^3.0.1", @@ -1703,7 +1703,6 @@ "version": "0.3.3", "resolved": "https://registry.npmjs.org/asciidoctor-opal-runtime/-/asciidoctor-opal-runtime-0.3.3.tgz", "integrity": "sha512-/CEVNiOia8E5BMO9FLooo+Kv18K4+4JBFRJp8vUy/N5dMRAg+fRNV4HA+o6aoSC79jVU/aT5XvUpxSxSsTS8FQ==", - "dev": true, "license": "MIT", "dependencies": { "glob": "7.1.3", @@ -1778,7 +1777,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/atomic-sleep/-/atomic-sleep-1.0.0.tgz", "integrity": "sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ==", - "dev": true, "license": "MIT", "engines": { "node": ">=8.0.0" @@ -1788,7 +1786,6 @@ "version": "1.6.7", "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.7.tgz", "integrity": "sha512-OnAYlL5b7LEkALw87fUVafQw5rVR9RjwGd4KUwNQ6DrrNmaVaUCgLipfVlzrPQ4tWOR9P0IXGNOx50jYCCdSJg==", - "dev": true, "license": "Apache-2.0" }, "node_modules/bach": { @@ -1810,14 +1807,12 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true, "license": "MIT" }, "node_modules/bare-events": { "version": "2.5.4", "resolved": "https://registry.npmjs.org/bare-events/-/bare-events-2.5.4.tgz", "integrity": "sha512-+gFfDkR8pj4/TrWCGUGWmJIkBwuxPS5F+a5yWjOHQt2hHvNZd5YLzadjmDUtFmMM4y429bnKLa8bYBMHcYdnQA==", - "dev": true, "license": "Apache-2.0", "optional": true }, @@ -1825,7 +1820,6 @@ "version": "1.5.1", "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "dev": true, "funding": [ { "type": "github", @@ -1913,7 +1907,6 @@ "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, "license": "MIT", "dependencies": { "balanced-match": "^1.0.0", @@ -2018,7 +2011,6 @@ "version": "6.0.3", "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", - "dev": true, "funding": [ { "type": "github", @@ -2174,7 +2166,6 @@ "version": "2.1.2", "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==", - "dev": true, "license": "MIT", "engines": { "node": ">=0.8" @@ -2213,7 +2204,6 @@ "version": "2.0.20", "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", - "dev": true, "license": "MIT" }, "node_modules/combined-stream": { @@ -2242,7 +2232,6 @@ "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true, "license": "MIT" }, "node_modules/connect": { @@ -2451,7 +2440,6 @@ "version": "4.6.3", "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-4.6.3.tgz", "integrity": "sha512-2P0p0pFGzHS5EMnhdxQi7aJN+iMheud0UhG4dlE1DLAlvL8JHjJJTX/CSm4JXwV0Ka5nGk3zC5mcb5bUQUxxMA==", - "dev": true, "license": "MIT", "engines": { "node": "*" @@ -2736,7 +2724,6 @@ "version": "1.4.4", "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dev": true, "license": "MIT", "dependencies": { "once": "^1.4.0" @@ -2931,7 +2918,6 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", - "dev": true, "license": "MIT", "engines": { "node": ">=6" @@ -2948,7 +2934,6 @@ "version": "3.3.0", "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "dev": true, "license": "MIT", "engines": { "node": ">=0.8.x" @@ -3002,7 +2987,6 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/fast-copy/-/fast-copy-3.0.2.tgz", "integrity": "sha512-dl0O9Vhju8IrcLndv2eU4ldt1ftXMqqfgN4H1cpmGV7P6jeB9FwpN9a2c8DPGE1Ys88rNUJVYDHq73CGAGOPfQ==", - "dev": true, "license": "MIT" }, "node_modules/fast-deep-equal": { @@ -3015,7 +2999,6 @@ "version": "1.3.2", "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.2.tgz", "integrity": "sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==", - "dev": true, "license": "MIT" }, "node_modules/fast-glob": { @@ -3049,7 +3032,6 @@ "version": "3.5.0", "resolved": "https://registry.npmjs.org/fast-redact/-/fast-redact-3.5.0.tgz", "integrity": "sha512-dwsoQlS7h9hMeYUq1W++23NDcBLV4KqONnITDV9DjfS3q1SgDGVrBdvvTLUotWtPSD7asWDV9/CmsZPy8Hf70A==", - "dev": true, "license": "MIT", "engines": { "node": ">=6" @@ -3059,7 +3041,6 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==", - "dev": true, "license": "MIT" }, "node_modules/fast-uri": { @@ -3349,7 +3330,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true, "license": "ISC" }, "node_modules/fsevents": { @@ -3448,7 +3428,6 @@ "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", "deprecated": "Glob versions prior to v9 are no longer supported", - "dev": true, "license": "ISC", "dependencies": { "fs.realpath": "^1.0.0", @@ -3788,7 +3767,6 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/help-me/-/help-me-5.0.0.tgz", "integrity": "sha512-7xgomUX6ADmcYzFik0HzAxh/73YlKR9bmFzf51CZwR+b6YtzU2m0u49hQCqV6SvlqIqsaxovfwdvbnsw3b/zpg==", - "dev": true, "license": "MIT" }, "node_modules/homedir-polyfill": { @@ -4008,7 +3986,6 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true, "funding": [ { "type": "github", @@ -4050,7 +4027,6 @@ "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", - "dev": true, "license": "ISC", "dependencies": { "once": "^1.3.0", @@ -4061,7 +4037,6 @@ "version": "2.0.4", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true, "license": "ISC" }, "node_modules/ini": { @@ -4350,7 +4325,6 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/joycon/-/joycon-3.1.1.tgz", "integrity": "sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==", - "dev": true, "license": "MIT", "engines": { "node": ">=10" @@ -4664,7 +4638,6 @@ "version": "1.52.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true, "license": "MIT", "engines": { "node": ">= 0.6" @@ -4674,7 +4647,6 @@ "version": "2.1.35", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, "license": "MIT", "dependencies": { "mime-db": "1.52.0" @@ -4710,7 +4682,6 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, "license": "ISC", "dependencies": { "brace-expansion": "^1.1.7" @@ -4723,7 +4694,6 @@ "version": "1.2.8", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "dev": true, "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" @@ -4761,7 +4731,6 @@ "resolved": "https://registry.npmjs.org/mobx/-/mobx-6.13.7.tgz", "integrity": "sha512-aChaVU/DO5aRPmk1GX8L+whocagUUpBQqoPtJk+cm7UOXUk87J4PeWCh6nNmTTIfEhiR9DI/+FnA8dln/hTK7g==", "dev": true, - "peer": true, "funding": { "type": "opencollective", "url": "https://opencollective.com/mobx" @@ -5101,7 +5070,6 @@ "version": "2.1.2", "resolved": "https://registry.npmjs.org/on-exit-leak-free/-/on-exit-leak-free-2.1.2.tgz", "integrity": "sha512-0eJJY6hXLGf1udHwfNftBqH+g73EU4B504nZeKpz1sYRKafAghwxEJunB2O7rDZkL4PGfsMVnTXZ2EjibbqcsA==", - "dev": true, "license": "MIT", "engines": { "node": ">=14.0.0" @@ -5124,7 +5092,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dev": true, "license": "ISC", "dependencies": { "wrappy": "1" @@ -5235,7 +5202,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "dev": true, "license": "MIT", "engines": { "node": ">=0.10.0" @@ -5353,7 +5319,6 @@ "version": "9.2.0", "resolved": "https://registry.npmjs.org/pino/-/pino-9.2.0.tgz", "integrity": "sha512-g3/hpwfujK5a4oVbaefoJxezLzsDgLcNJeITvC6yrfwYeT9la+edCK42j5QpEQSQCZgTKapXvnQIdgZwvRaZug==", - "dev": true, "license": "MIT", "dependencies": { "atomic-sleep": "^1.0.0", @@ -5376,7 +5341,6 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/pino-abstract-transport/-/pino-abstract-transport-1.2.0.tgz", "integrity": "sha512-Guhh8EZfPCfH+PMXAb6rKOjGQEoy0xlAIn+irODG5kgfYV+BQ0rGYYWTIel3P5mmyXqkYkPmdIkywsn6QKUR1Q==", - "dev": true, "license": "MIT", "dependencies": { "readable-stream": "^4.0.0", @@ -5387,7 +5351,6 @@ "version": "4.7.0", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.7.0.tgz", "integrity": "sha512-oIGGmcpTLwPga8Bn6/Z75SVaH1z5dUut2ibSyAMVhmUggWpmDn2dapB0n7f8nwaSiRtepAsfJyfXIO5DCVAODg==", - "dev": true, "license": "MIT", "dependencies": { "abort-controller": "^3.0.0", @@ -5404,7 +5367,6 @@ "version": "11.2.2", "resolved": "https://registry.npmjs.org/pino-pretty/-/pino-pretty-11.2.2.tgz", "integrity": "sha512-2FnyGir8nAJAqD3srROdrF1J5BIcMT4nwj7hHSc60El6Uxlym00UbCCd8pYIterstVBFlMyF1yFV8XdGIPbj4A==", - "dev": true, "license": "MIT", "dependencies": { "colorette": "^2.0.7", @@ -5430,7 +5392,6 @@ "version": "4.7.0", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.7.0.tgz", "integrity": "sha512-oIGGmcpTLwPga8Bn6/Z75SVaH1z5dUut2ibSyAMVhmUggWpmDn2dapB0n7f8nwaSiRtepAsfJyfXIO5DCVAODg==", - "dev": true, "license": "MIT", "dependencies": { "abort-controller": "^3.0.0", @@ -5447,7 +5408,6 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-7.0.0.tgz", "integrity": "sha512-e906FRY0+tV27iq4juKzSYPbUj2do2X2JX4EzSca1631EB2QJQUqGbDuERal7LCtOpxl6x3+nvo9NPZcmjkiFA==", - "dev": true, "license": "MIT" }, "node_modules/pluralize": { @@ -5533,7 +5493,6 @@ "version": "0.11.10", "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", - "dev": true, "license": "MIT", "engines": { "node": ">= 0.6.0" @@ -5543,7 +5502,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-3.0.0.tgz", "integrity": "sha512-mqn0kFRl0EoqhnL0GQ0veqFHyIN1yig9RHh/InzORTUiZHFRAur+aMtRkELNwGs9aNwKS6tg/An4NYBPGwvtzQ==", - "dev": true, "license": "MIT" }, "node_modules/progress": { @@ -5552,7 +5510,6 @@ "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=0.4.0" } @@ -5603,7 +5560,6 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.2.tgz", "integrity": "sha512-tUPXtzlGM8FE3P0ZL6DVs/3P58k9nk8/jZeQCurTJylQA8qFYzHFfhBJkuqyE0FifOsQ0uKWekiZ5g8wtr28cw==", - "dev": true, "license": "MIT", "dependencies": { "end-of-stream": "^1.1.0", @@ -5635,7 +5591,6 @@ "version": "4.0.4", "resolved": "https://registry.npmjs.org/quick-format-unescaped/-/quick-format-unescaped-4.0.4.tgz", "integrity": "sha512-tYC1Q1hgyRuHgloV/YXs2w15unPVh8qfu/qCTfhTYamaw7fyhumKa2yGpdSo87vY32rIclj+4fWYQXUMs9EHvg==", - "dev": true, "license": "MIT" }, "node_modules/randombytes": { @@ -5678,7 +5633,6 @@ "resolved": "https://registry.npmjs.org/react/-/react-19.1.0.tgz", "integrity": "sha512-FS+XFBNvn3GTAWq26joslQgWNoFu08F4kl0J4CgdNKADkdSGXQyTCnKteIAJy96Br6YbpEU1LSzV5dYtjMkMDg==", "dev": true, - "peer": true, "engines": { "node": ">=0.10.0" } @@ -5688,7 +5642,6 @@ "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.1.0.tgz", "integrity": "sha512-Xs1hdnE+DyKgeHJeJznQmYMIBG3TKIHJJT95Q58nHLSrElKlGQqDTR2HQ9fx5CN/Gk6Vh/kupBTDLU11/nDk/g==", "dev": true, - "peer": true, "dependencies": { "scheduler": "^0.26.0" }, @@ -5760,7 +5713,6 @@ "version": "0.2.0", "resolved": "https://registry.npmjs.org/real-require/-/real-require-0.2.0.tgz", "integrity": "sha512-57frrGM/OCTLqLOAh0mhVA9VBMHd+9U7Zb2THMGdBUoZVOtGbJzjxsYGDJ3A9AYYCP4hn6y1TVbaOfzWtm5GFg==", - "dev": true, "license": "MIT", "engines": { "node": ">= 12.13.0" @@ -5839,14 +5791,12 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", "integrity": "sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==", - "dev": true, "license": "ISC" }, "node_modules/replace-ext": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-2.0.0.tgz", "integrity": "sha512-UszKE5KVK6JvyD92nzMn9cDapSk6w/CaFZ96CnmDMUqH9oowfxF/ZjRITD25H4DnOQClLA4/j7jLGXXLVKxAug==", - "dev": true, "license": "MIT", "engines": { "node": ">= 10" @@ -5996,7 +5946,6 @@ "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, "funding": [ { "type": "github", @@ -6017,7 +5966,6 @@ "version": "2.5.0", "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.5.0.tgz", "integrity": "sha512-b3rppTKm9T+PsVCBEOUR46GWI7fdOs00VKZ1+9c1EWDaDMvjQc6tUwuFyIprgGgTcWoVHSKrU8H31ZHA2e0RHA==", - "dev": true, "license": "MIT", "engines": { "node": ">=10" @@ -6040,7 +5988,6 @@ "version": "2.7.0", "resolved": "https://registry.npmjs.org/secure-json-parse/-/secure-json-parse-2.7.0.tgz", "integrity": "sha512-6aU+Rwsezw7VR8/nyvKTx8QpWH9FrcYiXXlqC4z5d5XQBDRqtbfsRjnwGyqbi3gddNtWHuEk9OANUotL26qKUw==", - "dev": true, "license": "BSD-3-Clause" }, "node_modules/semver": { @@ -6714,7 +6661,6 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-4.0.1.tgz", "integrity": "sha512-hTSD/6JMLyT4r9zeof6UtuBDpjJ9sO08/nmS5djaA9eozT9oOlNdpXSnzcgj4FTqpk3nkLrs61l4gip9r1HCrQ==", - "dev": true, "license": "MIT", "dependencies": { "atomic-sleep": "^1.0.0" @@ -6753,7 +6699,6 @@ "version": "4.2.0", "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz", "integrity": "sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==", - "dev": true, "license": "ISC", "engines": { "node": ">= 10.x" @@ -6820,7 +6765,6 @@ "version": "2.22.0", "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.22.0.tgz", "integrity": "sha512-sLh1evHOzBy/iWRiR6d1zRcLao4gGZr3C1kzNz4fopCOKJb6xD9ub8Mpi9Mr1R6id5o43S+d93fI48UC5uM9aw==", - "dev": true, "license": "MIT", "dependencies": { "fast-fifo": "^1.3.2", @@ -6834,7 +6778,6 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, "license": "MIT", "dependencies": { "safe-buffer": "~5.2.0" @@ -6926,7 +6869,6 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true, "license": "MIT", "engines": { "node": ">=8" @@ -6952,7 +6894,6 @@ "resolved": "https://registry.npmjs.org/styled-components/-/styled-components-6.1.19.tgz", "integrity": "sha512-1v/e3Dl1BknC37cXMhwGomhO8AkYmN41CqyX9xhUDxry1ns3BFQy2lLDRQXJRdVVWB9OHemv/53xaStimvWyuA==", "dev": true, - "peer": true, "dependencies": { "@emotion/is-prop-valid": "1.2.2", "@emotion/unitless": "0.8.1", @@ -7049,7 +6990,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/teex/-/teex-1.0.1.tgz", "integrity": "sha512-eYE6iEI62Ni1H8oIa7KlDU6uQBtqr4Eajni3wX7rpfXD8ysFx8z0+dri+KWEPWpBsxXfxu58x/0jvTVT1ekOSg==", - "dev": true, "license": "MIT", "dependencies": { "streamx": "^2.12.5" @@ -7059,7 +6999,6 @@ "version": "1.2.3", "resolved": "https://registry.npmjs.org/text-decoder/-/text-decoder-1.2.3.tgz", "integrity": "sha512-3/o9z3X0X0fTupwsYvR03pJ/DjWuqqrfwBgTQzdWDiQSm9KitAyz/9WqsT2JQW7KV2m+bC2ol/zqpW37NHxLaA==", - "dev": true, "license": "Apache-2.0", "dependencies": { "b4a": "^1.6.4" @@ -7069,7 +7008,6 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/thread-stream/-/thread-stream-3.1.0.tgz", "integrity": "sha512-OqyPZ9u96VohAyMfJykzmivOrY2wfMSf3C5TtFJVgN+Hm6aj+voFhlK+kZEIv2FBh1X6Xp3DlnCOfEQ3B2J86A==", - "dev": true, "license": "MIT", "dependencies": { "real-require": "^0.2.0" @@ -7253,7 +7191,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/unxhr/-/unxhr-1.0.1.tgz", "integrity": "sha512-MAhukhVHyaLGDjyDYhy8gVjWJyhTECCdNsLwlMoGFoNJ3o79fpQhtQuzmAE4IxCMDwraF4cW8ZjpAV0m9CRQbg==", - "dev": true, "license": "MIT", "engines": { "node": ">=8.11" @@ -7331,7 +7268,6 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-3.0.1.tgz", "integrity": "sha512-0QwqXteBNXgnLCdWdvPQBX6FXRHtIH3VhJPTd5Lwn28tJXc34YqSCWUmkOvtJHBmB3gGoPtrOKk3Ts8/kEZ9aA==", - "dev": true, "license": "MIT", "dependencies": { "clone": "^2.1.2", @@ -7494,7 +7430,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "dev": true, "license": "ISC" }, "node_modules/ws": { From 5c7791d4c7195a5c36b0d7ec8ca1ad8de56f853b Mon Sep 17 00:00:00 2001 From: rosie yohannan Date: Tue, 18 Nov 2025 11:32:53 +0000 Subject: [PATCH 2/2] fix --- extensions/detect-unused-media-extension.js | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/extensions/detect-unused-media-extension.js b/extensions/detect-unused-media-extension.js index 213ae4fa10..7622e65e4a 100644 --- a/extensions/detect-unused-media-extension.js +++ b/extensions/detect-unused-media-extension.js @@ -70,13 +70,13 @@ function extractMediaReferences(contentCatalog, logger) { file.contents.toString().match(/(image|video)::?(\S+?)(?:\[|$)/gm) || []; mediaMatches.forEach((match) => { let imagePath = match.replace(/(image|video)::?/g, "").replace(/\[.*$/, "").trim(); - + // Skip if this looks like a Docker image reference (contains / or ends with version tag) // Docker images are typically like: "cimg/base:2021.04" or "python:3.6.3" if (imagePath.match(/^[a-z0-9-]+\/[a-z0-9-]+:|^[a-z0-9-]+:[0-9]/)) { return; // Skip Docker images } - + mediaReferences.add(imagePath); }); } @@ -129,15 +129,15 @@ function findUnusedMedia( const relativePathWithoutImagesDir = relativePath.replace(/^images\//, ''); const moduleQualifiedPathWithoutImagesDir = img.src.module + ":" + relativePathWithoutImagesDir; const componentQualifiedPathWithoutImagesDir = img.src.component + ":" + img.src.module + ":" + relativePathWithoutImagesDir; - - const isUsed = + + const isUsed = mediaReferences.has(relativePath) || mediaReferences.has(moduleQualifiedPath) || mediaReferences.has(componentQualifiedPath) || mediaReferences.has(relativePathWithoutImagesDir) || mediaReferences.has(moduleQualifiedPathWithoutImagesDir) || mediaReferences.has(componentQualifiedPathWithoutImagesDir); - + if (!isUsed) { unusedMedia.add(img); logger.warn(