datahaven/test/launcher/utils/constants.ts
Steve Degosserie 1f38b4e343
fix: Complete CI compatibility with self-hosted GitHub runners (#134)
## Summary

This PR resolves all CI failures following the migration to self-hosted
GitHub runners (`DH-Testing` group) by eliminating sudo dependencies and
fixing Docker connectivity issues.

## Key Changes

### 🔧 **Eliminated sudo requirements across all workflows**
- **Setup Environment**: Installed mold linker and system dependencies
in userspace without sudo
- **Tool Installation**: Replaced apt/system package installations with
direct binary downloads:
  - Kurtosis: Direct binary download from GitHub releases (v1.10.3)
  - Taplo: Direct binary installation for Cargo.toml formatting
- cargo-nextest: Using `cargo install` instead of GitHub action
(v0.9.100)
- **Runner Cleanup**: Skipped cleanup-runner action entirely on
self-hosted runners (bare-metal manages disk space externally)

### 🐳 **Fixed Docker connectivity for E2E tests**  
- **Enhanced dockerode configuration** with robust fallback logic for
different socket locations
- **Added DOCKER_HOST environment variable** to E2E workflow for
consistent Docker daemon access
- **Implemented connection testing** with detailed error diagnostics for
troubleshooting
- **Resolves FailedToOpenSocket errors** by supporting multiple socket
paths and connection methods

### 🏷️ **Workflow optimizations**
- **Label-based targeting**: All heavy workloads (Rust builds, E2E
tests) now run on `DH-Testing` runners
- **Dependency management**: Used `install-deps: false` flag instead of
hardcoded runner detection
- **Permission fixes**: Corrected Docker build permissions and GHCR
organization names

---------

Co-authored-by: Claude <noreply@anthropic.com>
2025-09-09 21:18:50 +02:00

37 lines
903 B
TypeScript

export const ZERO_HASH = "0x0000000000000000000000000000000000000000000000000000000000000000";
/**
* The name of the Docker network that DataHaven nodes and
* Snowbridge relayers will be connected to, in a local deployment.
*/
export const DOCKER_NETWORK_NAME = "datahaven-net";
/**
* The base services that are always launched when Kurtosis is used.
*/
export const BASE_SERVICES = [
"cl-1-lodestar-reth",
"cl-2-lodestar-reth",
"el-1-reth-lodestar",
"el-2-reth-lodestar",
"dora"
];
export const COMPONENTS = {
datahaven: {
imageName: "datahavenxyz/datahaven",
componentName: "Datahaven Network",
optionName: "datahaven"
},
snowbridge: {
imageName: "datahavenxyz/snowbridge-relay",
componentName: "Snowbridge Relayers",
optionName: "relayer"
}
} as const;
/**
* Minimum required Bun version
*/
export const MIN_BUN_VERSION = { major: 1, minor: 2 };