Ich weiß, wie eine NPM Abhängigkeit von einem GitHub Release zu machen:NPM installieren/Abhängigkeit von einer GitHub Veröffentlichung Binary
"dependencies": {
"package-name": "user/repo#v1.0.0"
}
das ist schön, aber ich mag ein spezifisches binäres von dieser Version installieren .
Ich versuchte
"dependencies": {
"package-name": "https://github.com/user/repo/releases/download/v1.0.0/bin.tgz"
}
Aber ich gibt mir die folgende Fehlermeldung:
❯ npm install
npm ERR! fetch failed https://github.com/user/repo/releases/download/v1.0.0/bin.tgz
npm WARN retry will retry, error on last attempt: Error: fetch failed with status code 404
Binary Release Vermögenswerte exist outside of GitHub und verwenden AWS S3.
Die URL github.com/user/repo/releases/download/v1.0.0/bin.tgz
ist mit einem 302
Status und einem HTTP-Location-Header auf https://github-cloud.s3.amazonaws.com/releases/XXX/XXX...
Umleitung Wenn ich direkt mit der S3 URL versuche ich einen ENAMETOOLONG Fehler bekam (see NPM issue):
> npm install https://github-cloud.s3.amazonaws.com/releases/XXX/XXX...
npm ERR! tarball.destroy is not a function
npm WARN retry will retry, error on last attempt: Error: ENAMETOOLONG: name too long, open '/var/folders/pn/......
Fragen:
- Warum ist NPM nicht fo Nach der Weiterleitung?
- Warum ein
404
? - Gibt es eine Möglichkeit, eine NPM-Abhängigkeit mit dem Binär-Tarball einer GitHub-Version zu verknüpfen? Wie?
Mein Kontext und Bedürfnisse:
- ich eine private GitHub-Repository vor "Bereitstellung"
- Mein Paket muss gebaut werden müssen (transpilation, etc.)
- Ich möchte um einen Tarball dieses Builds in meiner GitHub-Version zu "publizieren" und direkt auf meine NPM-Abhängigkeiten zu verweisen
- Ich benutze einen CI-Dienst, um zu bauen, zu machen die Tarball und laden Sie sie neben dem GitHub Release
- Ich möchte GitHub Release binär als NPM-Repository
Verwandte
- SO Frage verwenden: How to install an npm package from GitHub directly?
- NPM Ausgabe: https://github.com/npm/npm/issues/3055
Können Sie in mehr erklären Wie konfigurierst du den http-Proxy? – line72