Skip to content

Commit 4945b0a

Browse files
authored
Safer autoinstall (#1348)
* set min-release-age * fix command * fix tests * remove typesync (temporarily) * security updates * versions
1 parent 267cc15 commit 4945b0a

15 files changed

Lines changed: 75 additions & 548 deletions

File tree

package.json

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
"test:integration": "pnpm -r --filter=./integration-tests/* run test",
1919
"test:types": "pnpm -r --filter=./packages/* run test:types",
2020
"test": "pnpm -r --filter=./packages/* run test",
21-
"typesync": "pnpm exec typesync && pnpm -r exec typesync && pnpm install"
21+
"_typesync": "pnpm exec typesync && pnpm -r exec typesync && pnpm install"
2222
},
2323
"keywords": [],
2424
"author": "Open Function Group",
@@ -34,8 +34,7 @@
3434
"prettier": "^2.8.8",
3535
"rimraf": "^6.1.3",
3636
"semver": "^7.7.4",
37-
"tar-stream": "^3.1.8",
38-
"typesync": "^0.14.3"
37+
"tar-stream": "^3.1.8"
3938
},
4039
"packageManager": "pnpm@10.17.1+sha512.17c560fca4867ae9473a3899ad84a88334914f379be46d455cbf92e5cf4b39d34985d452d2583baf19967fa76cb5c17bc9e245529d0b98745721aa7200ecaf7a"
4140
}

packages/cli/CHANGELOG.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,13 @@
11
# @openfn/cli
22

3+
## 1.31.1
4+
5+
### Patch Changes
6+
7+
- 945437c: When installing adaptors, only install versions that have been released for 24hours
8+
- Updated dependencies [945437c]
9+
- @openfn/runtime@1.8.7
10+
311
## 1.31.0
412

513
### Minor Changes

packages/cli/package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@openfn/cli",
3-
"version": "1.31.0",
3+
"version": "1.31.1",
44
"description": "CLI devtools for the OpenFn toolchain",
55
"engines": {
66
"node": ">=18",
@@ -35,6 +35,7 @@
3535
"devDependencies": {
3636
"@openfn/language-collections": "^0.8.3",
3737
"@openfn/language-common": "3.2.3",
38+
"@types/lodash-es": "~4.17.12",
3839
"@types/mock-fs": "^4.13.4",
3940
"@types/node": "^18.19.130",
4041
"@types/rimraf": "^3.0.2",

packages/engine-multi/CHANGELOG.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,12 @@
11
# engine-multi
22

3+
## 1.10.8
4+
5+
### Patch Changes
6+
7+
- Updated dependencies [945437c]
8+
- @openfn/runtime@1.8.7
9+
310
## 1.10.7
411

512
### Patch Changes

packages/engine-multi/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@openfn/engine-multi",
3-
"version": "1.10.7",
3+
"version": "1.10.8",
44
"description": "Multi-process runtime engine",
55
"main": "dist/index.js",
66
"type": "module",

packages/lightning-mock/CHANGELOG.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,13 @@
11
# @openfn/lightning-mock
22

3+
## 2.4.10
4+
5+
### Patch Changes
6+
7+
- Updated dependencies [945437c]
8+
- @openfn/runtime@1.8.7
9+
- @openfn/engine-multi@1.10.8
10+
311
## 2.4.9
412

513
### Patch Changes

packages/lightning-mock/package.json

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@openfn/lightning-mock",
3-
"version": "2.4.9",
3+
"version": "2.4.10",
44
"private": true,
55
"description": "A mock Lightning server",
66
"main": "dist/index.js",
@@ -35,15 +35,13 @@
3535
},
3636
"devDependencies": {
3737
"@types/koa": "^2.15.0",
38-
"@types/koa-route": "^3.2.9",
3938
"@types/koa-websocket": "^5.0.11",
4039
"@types/koa__router": "^12.0.5",
4140
"@types/node": "^18.19.130",
4241
"@types/nodemon": "1.19.3",
4342
"@types/phoenix": "^1.6.7",
4443
"@types/yargs": "^17.0.35",
4544
"ava": "5.3.1",
46-
"koa-route": "^3.2.0",
4745
"koa-websocket": "^7.0.0",
4846
"query-string": "^8.2.0",
4947
"tslib": "^2.8.1",

packages/runtime/CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
# @openfn/runtime
22

3+
## 1.8.7
4+
5+
### Patch Changes
6+
7+
- 945437c: When installing adaptors, only install versions that have been released for 24hours
8+
39
## 1.8.6
410

511
### Patch Changes

packages/runtime/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@openfn/runtime",
3-
"version": "1.8.6",
3+
"version": "1.8.7",
44
"description": "Job processing runtime.",
55
"type": "module",
66
"exports": {

packages/runtime/src/modules/repo.ts

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,13 @@ const defaultPkg = {
1212
dependencies: {},
1313
};
1414

15+
const npmInstallFlags = [
16+
'--no-audit',
17+
'--no-fund',
18+
'--no-package-lock',
19+
`--min-release-age=1`,
20+
];
21+
1522
export const defaultRepoPath = '/tmp/openfn/repo';
1623

1724
type InstallList = Array<{ name: string; version: string }>;
@@ -60,16 +67,19 @@ export const install = async (
6067
}
6168

6269
if (forInstalling.length) {
63-
const flags = ['--no-audit', '--no-fund', '--no-package-lock'];
6470
const aliases = forInstalling.map(({ name, version }) => {
6571
const alias = `npm:${name}@${version}`;
6672
const aliasedName = `${name}_${version}`;
6773
return `${aliasedName}@${alias}`;
6874
});
75+
log.info(`npm install ${npmInstallFlags.join(' ')} ${aliases.join(' ')}`);
6976
// TODO it would be nice to report something about what's going on under the hood here
70-
await execFn(`npm install ${flags.join(' ')} ${aliases.join(' ')}`, {
71-
cwd: repoPath,
72-
});
77+
await execFn(
78+
`npm install ${npmInstallFlags.join(' ')} ${aliases.join(' ')}`,
79+
{
80+
cwd: repoPath,
81+
}
82+
);
7383
log.success(
7484
`Installed ${forInstalling
7585
.map(({ name, version }) => `${name}@${version}`)

0 commit comments

Comments
 (0)