Skip to content
This repository was archived by the owner on Sep 30, 2024. It is now read-only.
This repository was archived by the owner on Sep 30, 2024. It is now read-only.

Native SSBC execution #44183

@eseliger

Description

@eseliger

Follow-up to https://github.com/sourcegraph/sourcegraph/pull/44034

Done

Ensure the following works,

  • Skippable steps
    • Dynamic skipping (e.g. output of previous step determines if step should be skipped)
    • Hard coded skip
  • Workspace File Mounts
    • Binary
    • Script
    • Sub-directory
  • File Mounts
    • It is unclear if all variants of file mounts still work. Basic cases do work. Files used to be read-only in src-cli, they aren't now, but content is still reset in between steps.
    • The assumption that everything operates in /data is broken here, because we need to use what executors give us to persist out-of-repo state in between containers (like the step result from the previous step)
  • tee dependency
    • It depends on tee being available in the docker images to capture the cmd.stdout/cmd.stderr properly for template variable rendering
    • Called out in documentation
  • Environment Variable Rendering
    • Env-vars are not rendered in their evaluated form post-execution
  • Secrets
  • File Permissions
    • File permissions are unclear and might be similarly broken to how they are now - or even worse
  • Caching
    • Cache keys are not correctly computed if using workspace mounts - the metadataretriever is nil
  • Log Outputs
    • We still use log outputs to transfer the AfterStepResults to the Sourcegraph instance, this should finally become an artifact instead. Then, we don't have to rely on the execution_log_entires anymore and can theoretically prune those after some time. This column is currently growing indefinitely.
    • Created #50538 to track this work.

Metadata

Metadata

Assignees

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions