Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: allow install cargo package from git #219

Merged
merged 11 commits into from
Sep 23, 2024
8 changes: 7 additions & 1 deletion ci.config.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,12 @@
"estuary": "0.1.1",
"cross": "0.2.5",
"toml-cli2": "0.3.2"
},
"git": {
"estuary": {
"url": "https://github.com/ZettaScaleLabs/estuary.git",
"branch": "main"
}
}
}
}
}
7 changes: 5 additions & 2 deletions dist/build-crates-debian-main.js
Original file line number Diff line number Diff line change
Expand Up @@ -127260,7 +127260,7 @@ __nccwpck_require__.a(module, async (__webpack_handle_async_dependencies__, __we
/* harmony export */ "ib": () => (/* binding */ packagesDebian),
/* harmony export */ "lY": () => (/* binding */ buildDebian)
/* harmony export */ });
/* unused harmony exports packages, packagesOrdered, bump, bumpDependencies, setRegistry, configRegistry, build, hostTarget, isPublished */
/* unused harmony exports packages, packagesOrdered, bump, bumpDependencies, setRegistry, configRegistry, installBinaryFromGit, build, hostTarget, isPublished */
/* harmony import */ var os__WEBPACK_IMPORTED_MODULE_0__ = __nccwpck_require__(22037);
/* harmony import */ var os__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__nccwpck_require__.n(os__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_1__ = __nccwpck_require__(71017);
Expand Down Expand Up @@ -127469,6 +127469,9 @@ function packagesDebian(path) {
}
return result;
}
function installBinaryFromGit(name, gitUrl, gitBranch) {
sh(`cargo +stable install --git ${gitUrl} --branch ${gitBranch} name`);
}
/**
* Installs a cargo binary by compiling it from source using `cargo install`.
* The executable is cached using GitHub's `@actions/cache`.
Expand Down Expand Up @@ -127660,7 +127663,7 @@ __nccwpck_require__.d(__webpack_exports__, {
// UNUSED EXPORTS: gitEnv

;// CONCATENATED MODULE: ./ci.config.json
const ci_config_namespaceObject = JSON.parse('{"git":{"user":{"name":"eclipse-zenoh-bot","email":"eclipse-zenoh-bot@users.noreply.github.com"}},"lock":{"cratesio":{"cargo-deb":"2.1.0","estuary":"0.1.1","cross":"0.2.5","toml-cli2":"0.3.2"}}}');
const ci_config_namespaceObject = JSON.parse('{"git":{"user":{"name":"eclipse-zenoh-bot","email":"eclipse-zenoh-bot@users.noreply.github.com"}},"lock":{"cratesio":{"cargo-deb":"2.1.0","estuary":"0.1.1","cross":"0.2.5","toml-cli2":"0.3.2"},"git":{"estuary":{"url":"https://github.com/ZettaScaleLabs/estuary.git","branch":"main"}}}}');
;// CONCATENATED MODULE: ./src/config.ts

const config = ci_config_namespaceObject;
Expand Down
7 changes: 5 additions & 2 deletions dist/build-crates-standalone-main.js
Original file line number Diff line number Diff line change
Expand Up @@ -127244,7 +127244,7 @@ __nccwpck_require__.a(module, async (__webpack_handle_async_dependencies__, __we
/* harmony export */ "KD": () => (/* binding */ hostTarget),
/* harmony export */ "Mj": () => (/* binding */ installBinaryCached)
/* harmony export */ });
/* unused harmony exports packages, packagesOrdered, bump, bumpDependencies, setRegistry, configRegistry, packagesDebian, buildDebian, toDebianVersion, isPublished */
/* unused harmony exports packages, packagesOrdered, bump, bumpDependencies, setRegistry, configRegistry, packagesDebian, installBinaryFromGit, buildDebian, toDebianVersion, isPublished */
/* harmony import */ var os__WEBPACK_IMPORTED_MODULE_0__ = __nccwpck_require__(22037);
/* harmony import */ var os__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__nccwpck_require__.n(os__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_1__ = __nccwpck_require__(71017);
Expand Down Expand Up @@ -127453,6 +127453,9 @@ function packagesDebian(path) {
}
return result;
}
function installBinaryFromGit(name, gitUrl, gitBranch) {
sh(`cargo +stable install --git ${gitUrl} --branch ${gitBranch} name`);
}
/**
* Installs a cargo binary by compiling it from source using `cargo install`.
* The executable is cached using GitHub's `@actions/cache`.
Expand Down Expand Up @@ -127644,7 +127647,7 @@ __nccwpck_require__.d(__webpack_exports__, {
// UNUSED EXPORTS: gitEnv

;// CONCATENATED MODULE: ./ci.config.json
const ci_config_namespaceObject = JSON.parse('{"git":{"user":{"name":"eclipse-zenoh-bot","email":"eclipse-zenoh-bot@users.noreply.github.com"}},"lock":{"cratesio":{"cargo-deb":"2.1.0","estuary":"0.1.1","cross":"0.2.5","toml-cli2":"0.3.2"}}}');
const ci_config_namespaceObject = JSON.parse('{"git":{"user":{"name":"eclipse-zenoh-bot","email":"eclipse-zenoh-bot@users.noreply.github.com"}},"lock":{"cratesio":{"cargo-deb":"2.1.0","estuary":"0.1.1","cross":"0.2.5","toml-cli2":"0.3.2"},"git":{"estuary":{"url":"https://github.com/ZettaScaleLabs/estuary.git","branch":"main"}}}}');
;// CONCATENATED MODULE: ./src/config.ts

const config = ci_config_namespaceObject;
Expand Down
7 changes: 5 additions & 2 deletions dist/bump-crates-main.js
Original file line number Diff line number Diff line change
Expand Up @@ -80966,7 +80966,7 @@ __nccwpck_require__.a(module, async (__webpack_handle_async_dependencies__, __we
/* harmony export */ "Mj": () => (/* binding */ installBinaryCached),
/* harmony export */ "UR": () => (/* binding */ bumpDependencies)
/* harmony export */ });
/* unused harmony exports packages, packagesOrdered, setRegistry, configRegistry, packagesDebian, build, hostTarget, buildDebian, isPublished */
/* unused harmony exports packages, packagesOrdered, setRegistry, configRegistry, packagesDebian, installBinaryFromGit, build, hostTarget, buildDebian, isPublished */
/* harmony import */ var os__WEBPACK_IMPORTED_MODULE_0__ = __nccwpck_require__(2037);
/* harmony import */ var os__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__nccwpck_require__.n(os__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_1__ = __nccwpck_require__(1017);
Expand Down Expand Up @@ -81175,6 +81175,9 @@ function packagesDebian(path) {
}
return result;
}
function installBinaryFromGit(name, gitUrl, gitBranch) {
sh(`cargo +stable install --git ${gitUrl} --branch ${gitBranch} name`);
}
/**
* Installs a cargo binary by compiling it from source using `cargo install`.
* The executable is cached using GitHub's `@actions/cache`.
Expand Down Expand Up @@ -81365,7 +81368,7 @@ __nccwpck_require__.d(__webpack_exports__, {
});

;// CONCATENATED MODULE: ./ci.config.json
const ci_config_namespaceObject = JSON.parse('{"git":{"user":{"name":"eclipse-zenoh-bot","email":"eclipse-zenoh-bot@users.noreply.github.com"}},"lock":{"cratesio":{"cargo-deb":"2.1.0","estuary":"0.1.1","cross":"0.2.5","toml-cli2":"0.3.2"}}}');
const ci_config_namespaceObject = JSON.parse('{"git":{"user":{"name":"eclipse-zenoh-bot","email":"eclipse-zenoh-bot@users.noreply.github.com"}},"lock":{"cratesio":{"cargo-deb":"2.1.0","estuary":"0.1.1","cross":"0.2.5","toml-cli2":"0.3.2"},"git":{"estuary":{"url":"https://github.com/ZettaScaleLabs/estuary.git","branch":"main"}}}}');
;// CONCATENATED MODULE: ./src/config.ts

const config = ci_config_namespaceObject;
Expand Down
12 changes: 9 additions & 3 deletions dist/publish-crates-cargo-main.js
Original file line number Diff line number Diff line change
Expand Up @@ -80852,7 +80852,8 @@ __nccwpck_require__.a(module, async (__webpack_handle_async_dependencies__, __we
/* harmony export */ "i8": () => (/* binding */ setRegistry),
/* harmony export */ "p3": () => (/* binding */ configRegistry),
/* harmony export */ "r4": () => (/* binding */ packagesOrdered),
/* harmony export */ "s9": () => (/* binding */ isPublished)
/* harmony export */ "s9": () => (/* binding */ isPublished),
/* harmony export */ "wS": () => (/* binding */ installBinaryFromGit)
/* harmony export */ });
/* unused harmony exports packages, bump, bumpDependencies, packagesDebian, build, hostTarget, buildDebian, toDebianVersion */
/* harmony import */ var os__WEBPACK_IMPORTED_MODULE_0__ = __nccwpck_require__(2037);
Expand Down Expand Up @@ -81063,6 +81064,9 @@ function packagesDebian(path) {
}
return result;
}
function installBinaryFromGit(name, gitUrl, gitBranch) {
(0,_command__WEBPACK_IMPORTED_MODULE_5__.sh)(`cargo +stable install --git ${gitUrl} --branch ${gitBranch} name`);
}
/**
* Installs a cargo binary by compiling it from source using `cargo install`.
* The executable is cached using GitHub's `@actions/cache`.
Expand Down Expand Up @@ -81254,7 +81258,7 @@ __nccwpck_require__.d(__webpack_exports__, {
// UNUSED EXPORTS: gitEnv

;// CONCATENATED MODULE: ./ci.config.json
const ci_config_namespaceObject = JSON.parse('{"git":{"user":{"name":"eclipse-zenoh-bot","email":"eclipse-zenoh-bot@users.noreply.github.com"}},"lock":{"cratesio":{"cargo-deb":"2.1.0","estuary":"0.1.1","cross":"0.2.5","toml-cli2":"0.3.2"}}}');
const ci_config_namespaceObject = JSON.parse('{"git":{"user":{"name":"eclipse-zenoh-bot","email":"eclipse-zenoh-bot@users.noreply.github.com"}},"lock":{"cratesio":{"cargo-deb":"2.1.0","estuary":"0.1.1","cross":"0.2.5","toml-cli2":"0.3.2"},"git":{"estuary":{"url":"https://github.com/ZettaScaleLabs/estuary.git","branch":"main"}}}}');
;// CONCATENATED MODULE: ./src/config.ts

const config = ci_config_namespaceObject;
Expand Down Expand Up @@ -81287,6 +81291,7 @@ __nccwpck_require__.a(module, async (__webpack_handle_async_dependencies__, __we
/* harmony import */ var _actions_core__WEBPACK_IMPORTED_MODULE_4__ = __nccwpck_require__(2186);
/* harmony import */ var _actions_core__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__nccwpck_require__.n(_actions_core__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _cargo__WEBPACK_IMPORTED_MODULE_5__ = __nccwpck_require__(8683);
/* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_6__ = __nccwpck_require__(98);
var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_cargo__WEBPACK_IMPORTED_MODULE_5__]);
_cargo__WEBPACK_IMPORTED_MODULE_5__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];

Expand All @@ -81295,6 +81300,7 @@ _cargo__WEBPACK_IMPORTED_MODULE_5__ = (__webpack_async_dependencies__.then ? (aw




const name = "estuary";
const baseUrl = "http://localhost:7878";
const index = `${baseUrl}/git/index`;
Expand All @@ -81312,7 +81318,7 @@ async function spawn() {
},
stdio: "inherit",
};
await _cargo__WEBPACK_IMPORTED_MODULE_5__/* .installBinaryCached */ .Mj(name);
_cargo__WEBPACK_IMPORTED_MODULE_5__/* .installBinaryFromGit */ .wS(name, _config__WEBPACK_IMPORTED_MODULE_6__/* .config.lock.git */ .v.lock.git[name].url, _config__WEBPACK_IMPORTED_MODULE_6__/* .config.lock.git */ .v.lock.git[name].branch);
const proc = child_process__WEBPACK_IMPORTED_MODULE_0__.spawn("estuary", ["--base-url", baseUrl, "--crate-dir", crateDir, "--index-dir", indexDir], options);
_actions_core__WEBPACK_IMPORTED_MODULE_4__.info(`Spawned estuary (${proc.pid}) with base URL ${baseUrl} and data directory ${tmp}`);
return { name, index, token, crateDir, indexDir, proc };
Expand Down
7 changes: 5 additions & 2 deletions dist/publish-crates-debian-main.js
Original file line number Diff line number Diff line change
Expand Up @@ -127239,7 +127239,7 @@ __nccwpck_require__.a(module, async (__webpack_handle_async_dependencies__, __we
/* harmony export */ __nccwpck_require__.d(__webpack_exports__, {
/* harmony export */ "Mj": () => (/* binding */ installBinaryCached)
/* harmony export */ });
/* unused harmony exports packages, packagesOrdered, bump, bumpDependencies, setRegistry, configRegistry, packagesDebian, build, hostTarget, buildDebian, toDebianVersion, isPublished */
/* unused harmony exports packages, packagesOrdered, bump, bumpDependencies, setRegistry, configRegistry, packagesDebian, installBinaryFromGit, build, hostTarget, buildDebian, toDebianVersion, isPublished */
/* harmony import */ var os__WEBPACK_IMPORTED_MODULE_0__ = __nccwpck_require__(22037);
/* harmony import */ var os__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__nccwpck_require__.n(os__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_1__ = __nccwpck_require__(71017);
Expand Down Expand Up @@ -127448,6 +127448,9 @@ function packagesDebian(path) {
}
return result;
}
function installBinaryFromGit(name, gitUrl, gitBranch) {
sh(`cargo +stable install --git ${gitUrl} --branch ${gitBranch} name`);
}
/**
* Installs a cargo binary by compiling it from source using `cargo install`.
* The executable is cached using GitHub's `@actions/cache`.
Expand Down Expand Up @@ -127639,7 +127642,7 @@ __nccwpck_require__.d(__webpack_exports__, {
// UNUSED EXPORTS: gitEnv

;// CONCATENATED MODULE: ./ci.config.json
const ci_config_namespaceObject = JSON.parse('{"git":{"user":{"name":"eclipse-zenoh-bot","email":"eclipse-zenoh-bot@users.noreply.github.com"}},"lock":{"cratesio":{"cargo-deb":"2.1.0","estuary":"0.1.1","cross":"0.2.5","toml-cli2":"0.3.2"}}}');
const ci_config_namespaceObject = JSON.parse('{"git":{"user":{"name":"eclipse-zenoh-bot","email":"eclipse-zenoh-bot@users.noreply.github.com"}},"lock":{"cratesio":{"cargo-deb":"2.1.0","estuary":"0.1.1","cross":"0.2.5","toml-cli2":"0.3.2"},"git":{"estuary":{"url":"https://github.com/ZettaScaleLabs/estuary.git","branch":"main"}}}}');
;// CONCATENATED MODULE: ./src/config.ts

const config = ci_config_namespaceObject;
Expand Down
7 changes: 5 additions & 2 deletions dist/publish-crates-eclipse-main.js
Original file line number Diff line number Diff line change
Expand Up @@ -127320,7 +127320,7 @@ __nccwpck_require__.a(module, async (__webpack_handle_async_dependencies__, __we
/* harmony export */ __nccwpck_require__.d(__webpack_exports__, {
/* harmony export */ "Mj": () => (/* binding */ installBinaryCached)
/* harmony export */ });
/* unused harmony exports packages, packagesOrdered, bump, bumpDependencies, setRegistry, configRegistry, packagesDebian, build, hostTarget, buildDebian, toDebianVersion, isPublished */
/* unused harmony exports packages, packagesOrdered, bump, bumpDependencies, setRegistry, configRegistry, packagesDebian, installBinaryFromGit, build, hostTarget, buildDebian, toDebianVersion, isPublished */
/* harmony import */ var os__WEBPACK_IMPORTED_MODULE_0__ = __nccwpck_require__(22037);
/* harmony import */ var os__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__nccwpck_require__.n(os__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_1__ = __nccwpck_require__(71017);
Expand Down Expand Up @@ -127529,6 +127529,9 @@ function packagesDebian(path) {
}
return result;
}
function installBinaryFromGit(name, gitUrl, gitBranch) {
sh(`cargo +stable install --git ${gitUrl} --branch ${gitBranch} name`);
}
/**
* Installs a cargo binary by compiling it from source using `cargo install`.
* The executable is cached using GitHub's `@actions/cache`.
Expand Down Expand Up @@ -127741,7 +127744,7 @@ __nccwpck_require__.d(__webpack_exports__, {
// UNUSED EXPORTS: gitEnv

;// CONCATENATED MODULE: ./ci.config.json
const ci_config_namespaceObject = JSON.parse('{"git":{"user":{"name":"eclipse-zenoh-bot","email":"eclipse-zenoh-bot@users.noreply.github.com"}},"lock":{"cratesio":{"cargo-deb":"2.1.0","estuary":"0.1.1","cross":"0.2.5","toml-cli2":"0.3.2"}}}');
const ci_config_namespaceObject = JSON.parse('{"git":{"user":{"name":"eclipse-zenoh-bot","email":"eclipse-zenoh-bot@users.noreply.github.com"}},"lock":{"cratesio":{"cargo-deb":"2.1.0","estuary":"0.1.1","cross":"0.2.5","toml-cli2":"0.3.2"},"git":{"estuary":{"url":"https://github.com/ZettaScaleLabs/estuary.git","branch":"main"}}}}');
;// CONCATENATED MODULE: ./src/config.ts

const config = ci_config_namespaceObject;
Expand Down
7 changes: 5 additions & 2 deletions dist/publish-crates-github-main.js
Original file line number Diff line number Diff line change
Expand Up @@ -127320,7 +127320,7 @@ __nccwpck_require__.a(module, async (__webpack_handle_async_dependencies__, __we
/* harmony export */ __nccwpck_require__.d(__webpack_exports__, {
/* harmony export */ "Mj": () => (/* binding */ installBinaryCached)
/* harmony export */ });
/* unused harmony exports packages, packagesOrdered, bump, bumpDependencies, setRegistry, configRegistry, packagesDebian, build, hostTarget, buildDebian, toDebianVersion, isPublished */
/* unused harmony exports packages, packagesOrdered, bump, bumpDependencies, setRegistry, configRegistry, packagesDebian, installBinaryFromGit, build, hostTarget, buildDebian, toDebianVersion, isPublished */
/* harmony import */ var os__WEBPACK_IMPORTED_MODULE_0__ = __nccwpck_require__(22037);
/* harmony import */ var os__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__nccwpck_require__.n(os__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_1__ = __nccwpck_require__(71017);
Expand Down Expand Up @@ -127529,6 +127529,9 @@ function packagesDebian(path) {
}
return result;
}
function installBinaryFromGit(name, gitUrl, gitBranch) {
sh(`cargo +stable install --git ${gitUrl} --branch ${gitBranch} name`);
}
/**
* Installs a cargo binary by compiling it from source using `cargo install`.
* The executable is cached using GitHub's `@actions/cache`.
Expand Down Expand Up @@ -127720,7 +127723,7 @@ __nccwpck_require__.d(__webpack_exports__, {
// UNUSED EXPORTS: gitEnv

;// CONCATENATED MODULE: ./ci.config.json
const ci_config_namespaceObject = JSON.parse('{"git":{"user":{"name":"eclipse-zenoh-bot","email":"eclipse-zenoh-bot@users.noreply.github.com"}},"lock":{"cratesio":{"cargo-deb":"2.1.0","estuary":"0.1.1","cross":"0.2.5","toml-cli2":"0.3.2"}}}');
const ci_config_namespaceObject = JSON.parse('{"git":{"user":{"name":"eclipse-zenoh-bot","email":"eclipse-zenoh-bot@users.noreply.github.com"}},"lock":{"cratesio":{"cargo-deb":"2.1.0","estuary":"0.1.1","cross":"0.2.5","toml-cli2":"0.3.2"},"git":{"estuary":{"url":"https://github.com/ZettaScaleLabs/estuary.git","branch":"main"}}}}');
;// CONCATENATED MODULE: ./src/config.ts

const config = ci_config_namespaceObject;
Expand Down
7 changes: 5 additions & 2 deletions dist/publish-crates-homebrew-main.js
Original file line number Diff line number Diff line change
Expand Up @@ -127224,7 +127224,7 @@ __nccwpck_require__.a(module, async (__webpack_handle_async_dependencies__, __we
/* harmony export */ __nccwpck_require__.d(__webpack_exports__, {
/* harmony export */ "Mj": () => (/* binding */ installBinaryCached)
/* harmony export */ });
/* unused harmony exports packages, packagesOrdered, bump, bumpDependencies, setRegistry, configRegistry, packagesDebian, build, hostTarget, buildDebian, toDebianVersion, isPublished */
/* unused harmony exports packages, packagesOrdered, bump, bumpDependencies, setRegistry, configRegistry, packagesDebian, installBinaryFromGit, build, hostTarget, buildDebian, toDebianVersion, isPublished */
/* harmony import */ var os__WEBPACK_IMPORTED_MODULE_0__ = __nccwpck_require__(22037);
/* harmony import */ var os__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__nccwpck_require__.n(os__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_1__ = __nccwpck_require__(71017);
Expand Down Expand Up @@ -127433,6 +127433,9 @@ function packagesDebian(path) {
}
return result;
}
function installBinaryFromGit(name, gitUrl, gitBranch) {
sh(`cargo +stable install --git ${gitUrl} --branch ${gitBranch} name`);
}
/**
* Installs a cargo binary by compiling it from source using `cargo install`.
* The executable is cached using GitHub's `@actions/cache`.
Expand Down Expand Up @@ -127644,7 +127647,7 @@ __nccwpck_require__.d(__webpack_exports__, {
});

;// CONCATENATED MODULE: ./ci.config.json
const ci_config_namespaceObject = JSON.parse('{"git":{"user":{"name":"eclipse-zenoh-bot","email":"eclipse-zenoh-bot@users.noreply.github.com"}},"lock":{"cratesio":{"cargo-deb":"2.1.0","estuary":"0.1.1","cross":"0.2.5","toml-cli2":"0.3.2"}}}');
const ci_config_namespaceObject = JSON.parse('{"git":{"user":{"name":"eclipse-zenoh-bot","email":"eclipse-zenoh-bot@users.noreply.github.com"}},"lock":{"cratesio":{"cargo-deb":"2.1.0","estuary":"0.1.1","cross":"0.2.5","toml-cli2":"0.3.2"},"git":{"estuary":{"url":"https://github.com/ZettaScaleLabs/estuary.git","branch":"main"}}}}');
;// CONCATENATED MODULE: ./src/config.ts

const config = ci_config_namespaceObject;
Expand Down
4 changes: 4 additions & 0 deletions src/cargo.ts
Original file line number Diff line number Diff line change
Expand Up @@ -282,6 +282,10 @@ export function packagesDebian(path: string): Package[] {
return result;
}

export function installBinaryFromGit(name: string, gitUrl: string, gitBranch: string) {
sh(`cargo +stable install --git ${gitUrl} --branch ${gitBranch} name`);
}

/**
* Installs a cargo binary by compiling it from source using `cargo install`.
* The executable is cached using GitHub's `@actions/cache`.
Expand Down
6 changes: 6 additions & 0 deletions src/config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,12 @@ type Config = {
cratesio: {
[key: string]: string;
};
git: {
[key: string]: {
url: string;
branch: string;
};
};
};
};

Expand Down
3 changes: 2 additions & 1 deletion src/estuary.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ import { join } from "path";
import * as core from "@actions/core";

import * as cargo from "./cargo";
import { config } from "./config";

const name = "estuary";
const baseUrl = "http://localhost:7878";
Expand Down Expand Up @@ -36,7 +37,7 @@ export async function spawn(): Promise<Estuary> {
stdio: "inherit",
} as child_process.SpawnOptions;

await cargo.installBinaryCached(name);
cargo.installBinaryFromGit(name, config.lock.git[name].url, config.lock.git[name].branch);

const proc = child_process.spawn(
"estuary",
Expand Down