apify-cli 1.0.0-beta.1 → 1.0.0-beta.100

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (101) hide show
  1. package/CHANGELOG.md +200 -0
  2. package/README.md +128 -77
  3. package/bin/dev.js +7 -2
  4. package/bin/dev.sh +4 -0
  5. package/bin/run.js +7 -0
  6. package/dist/.tsbuildinfo +1 -1
  7. package/dist/commands/actor/push-data.js +2 -2
  8. package/dist/commands/actor/set-value.js +3 -3
  9. package/dist/commands/actor/set-value.js.map +1 -1
  10. package/dist/commands/call.d.ts +2 -1
  11. package/dist/commands/call.d.ts.map +1 -1
  12. package/dist/commands/call.js +56 -90
  13. package/dist/commands/call.js.map +1 -1
  14. package/dist/commands/create.d.ts +1 -0
  15. package/dist/commands/create.d.ts.map +1 -1
  16. package/dist/commands/create.js +49 -29
  17. package/dist/commands/create.js.map +1 -1
  18. package/dist/commands/edit-input-schema.js +15 -15
  19. package/dist/commands/edit-input-schema.js.map +1 -1
  20. package/dist/commands/init-wrap-scrapy.js +1 -1
  21. package/dist/commands/init-wrap-scrapy.js.map +1 -1
  22. package/dist/commands/init.js +5 -5
  23. package/dist/commands/init.js.map +1 -1
  24. package/dist/commands/login.d.ts +1 -0
  25. package/dist/commands/login.d.ts.map +1 -1
  26. package/dist/commands/login.js +143 -12
  27. package/dist/commands/login.js.map +1 -1
  28. package/dist/commands/logout.js +1 -1
  29. package/dist/commands/logout.js.map +1 -1
  30. package/dist/commands/pull.js +2 -2
  31. package/dist/commands/pull.js.map +1 -1
  32. package/dist/commands/push.d.ts +2 -0
  33. package/dist/commands/push.d.ts.map +1 -1
  34. package/dist/commands/push.js +80 -24
  35. package/dist/commands/push.js.map +1 -1
  36. package/dist/commands/run.d.ts +1 -0
  37. package/dist/commands/run.d.ts.map +1 -1
  38. package/dist/commands/run.js +101 -35
  39. package/dist/commands/run.js.map +1 -1
  40. package/dist/commands/secrets/index.js +1 -1
  41. package/dist/commands/task/index.d.ts +6 -0
  42. package/dist/commands/task/index.d.ts.map +1 -0
  43. package/dist/commands/task/index.js +13 -0
  44. package/dist/commands/task/index.js.map +1 -0
  45. package/dist/commands/task/run.d.ts +16 -0
  46. package/dist/commands/task/run.d.ts.map +1 -0
  47. package/dist/commands/task/run.js +91 -0
  48. package/dist/commands/task/run.js.map +1 -0
  49. package/dist/commands/{vis.d.ts → validate-schema.d.ts} +2 -1
  50. package/dist/commands/validate-schema.d.ts.map +1 -0
  51. package/dist/commands/{vis.js → validate-schema.js} +10 -4
  52. package/dist/commands/validate-schema.js.map +1 -0
  53. package/dist/hooks/deprecations.d.ts +4 -0
  54. package/dist/hooks/deprecations.d.ts.map +1 -0
  55. package/dist/hooks/deprecations.js +18 -0
  56. package/dist/hooks/deprecations.js.map +1 -0
  57. package/dist/lib/actor.d.ts +1 -1
  58. package/dist/lib/actor.js +2 -2
  59. package/dist/lib/actor.js.map +1 -1
  60. package/dist/lib/commands/run-on-cloud.d.ts +19 -0
  61. package/dist/lib/commands/run-on-cloud.d.ts.map +1 -0
  62. package/dist/lib/commands/run-on-cloud.js +90 -0
  63. package/dist/lib/commands/run-on-cloud.js.map +1 -0
  64. package/dist/lib/consts.d.ts +8 -0
  65. package/dist/lib/consts.d.ts.map +1 -1
  66. package/dist/lib/consts.js +10 -0
  67. package/dist/lib/consts.js.map +1 -1
  68. package/dist/lib/create-utils.js +1 -1
  69. package/dist/lib/create-utils.js.map +1 -1
  70. package/dist/lib/exec.d.ts.map +1 -1
  71. package/dist/lib/exec.js +7 -2
  72. package/dist/lib/exec.js.map +1 -1
  73. package/dist/lib/input_schema.d.ts +1 -1
  74. package/dist/lib/input_schema.d.ts.map +1 -1
  75. package/dist/lib/input_schema.js +1 -1
  76. package/dist/lib/input_schema.js.map +1 -1
  77. package/dist/lib/outputs.d.ts +18 -6
  78. package/dist/lib/outputs.d.ts.map +1 -1
  79. package/dist/lib/outputs.js +43 -18
  80. package/dist/lib/outputs.js.map +1 -1
  81. package/dist/lib/projects/scrapy/wrapScrapyProject.js +3 -3
  82. package/dist/lib/projects/scrapy/wrapScrapyProject.js.map +1 -1
  83. package/dist/lib/secrets.js +3 -3
  84. package/dist/lib/secrets.js.map +1 -1
  85. package/dist/lib/telemetry.d.ts.map +1 -1
  86. package/dist/lib/telemetry.js +1 -1
  87. package/dist/lib/telemetry.js.map +1 -1
  88. package/dist/lib/utils.d.ts +6 -7
  89. package/dist/lib/utils.d.ts.map +1 -1
  90. package/dist/lib/utils.js +40 -43
  91. package/dist/lib/utils.js.map +1 -1
  92. package/dist/lib/version_check.js +7 -7
  93. package/dist/lib/version_check.js.map +1 -1
  94. package/oclif.manifest.json +131 -38
  95. package/package.json +148 -141
  96. package/dist/commands/login-new.d.ts +0 -10
  97. package/dist/commands/login-new.d.ts.map +0 -1
  98. package/dist/commands/login-new.js +0 -166
  99. package/dist/commands/login-new.js.map +0 -1
  100. package/dist/commands/vis.d.ts.map +0 -1
  101. package/dist/commands/vis.js.map +0 -1
@@ -14,18 +14,18 @@ export class InitCommand extends ApifyCommand {
14
14
  let { actorName } = this.args;
15
15
  const cwd = process.cwd();
16
16
  if (ProjectAnalyzer.getProjectType(cwd) === PROJECT_TYPES.SCRAPY) {
17
- info('The current directory looks like a Scrapy project. Using automatic project wrapping.');
17
+ info({ message: 'The current directory looks like a Scrapy project. Using automatic project wrapping.' });
18
18
  this.telemetryData.actorWrapper = PROJECT_TYPES.SCRAPY;
19
19
  return wrapScrapyProject({ projectPath: cwd });
20
20
  }
21
21
  if (!this.flags.yes && detectLocalActorLanguage(cwd).language === LANGUAGE.UNKNOWN) {
22
- warning('The current directory does not look like a Node.js or Python project.');
22
+ warning({ message: 'The current directory does not look like a Node.js or Python project.' });
23
23
  const { c } = await inquirer.prompt([{ name: 'c', message: 'Do you want to continue?', type: 'confirm' }]);
24
24
  if (!c)
25
25
  return;
26
26
  }
27
27
  if (getLocalConfig(cwd)) {
28
- warning(`Skipping creation of "${LOCAL_CONFIG_PATH}", the file already exists in the current directory.`);
28
+ warning({ message: `Skipping creation of "${LOCAL_CONFIG_PATH}", the file already exists in the current directory.` });
29
29
  }
30
30
  else {
31
31
  if (!actorName) {
@@ -37,7 +37,7 @@ export class InitCommand extends ApifyCommand {
37
37
  response = answer;
38
38
  }
39
39
  catch (err) {
40
- error(err.message);
40
+ error({ message: err.message });
41
41
  }
42
42
  }
43
43
  ({ actName: actorName } = response);
@@ -49,7 +49,7 @@ export class InitCommand extends ApifyCommand {
49
49
  await setLocalEnv(cwd);
50
50
  // Create prefilled INPUT.json file from the input schema prefills
51
51
  await createPrefilledInputFileFromInputSchema(cwd);
52
- success('The Actor has been initialized in the current directory.');
52
+ success({ message: 'The Actor has been initialized in the current directory.' });
53
53
  }
54
54
  }
55
55
  Object.defineProperty(InitCommand, "description", {
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,OAAO,MAAM,cAAc,CAAC;AAEnC,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,QAAQ,MAAM,UAAU,CAAC;AAEhC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,QAAQ,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC7H,OAAO,EAAE,uCAAuC,EAAE,MAAM,wBAAwB,CAAC;AACjF,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAC;AAChF,OAAO,EAAE,wBAAwB,EAAE,cAAc,EAAE,qBAAqB,EAAE,cAAc,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAElJ,MAAM,OAAO,WAAY,SAAQ,YAAgC;IAuB7D,KAAK,CAAC,GAAG;QACL,IAAI,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC;QAC9B,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAE1B,IAAI,eAAe,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,aAAa,CAAC,MAAM,EAAE,CAAC;YAC/D,IAAI,CAAC,sFAAsF,CAAC,CAAC;YAC7F,IAAI,CAAC,aAAa,CAAC,YAAY,GAAG,aAAa,CAAC,MAAM,CAAC;YAEvD,OAAO,iBAAiB,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;QACnD,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,wBAAwB,CAAC,GAAG,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,OAAO,EAAE,CAAC;YACjF,OAAO,CAAC,uEAAuE,CAAC,CAAC;YACjF,MAAM,EAAE,CAAC,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,0BAA0B,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;YAC3G,IAAI,CAAC,CAAC;gBAAE,OAAO;QACnB,CAAC;QAED,IAAI,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;YACtB,OAAO,CAAC,yBAAyB,iBAAiB,sDAAsD,CAAC,CAAC;QAC9G,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,SAAS,EAAE,CAAC;gBACb,IAAI,QAAQ,GAAG,IAAI,CAAC;gBAEpB,OAAO,CAAC,QAAQ,EAAE,CAAC;oBACf,IAAI,CAAC;wBACD,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;wBAC5G,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;wBAClC,QAAQ,GAAG,MAAM,CAAC;oBACtB,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACX,KAAK,CAAE,GAAa,CAAC,OAAO,CAAC,CAAC;oBAClC,CAAC;gBACL,CAAC;gBAED,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,QAAQ,CAAC,CAAC;YACxC,CAAC;YACD,0CAA0C;YAC1C,MAAM,WAAW,GAAG,EAAE,GAAG,kBAAkB,EAAE,GAAG,MAAM,qBAAqB,CAAC,GAAG,CAAC,EAAE,CAAC;YACnF,MAAM,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;QAC/E,CAAC;QAED,MAAM,WAAW,CAAC,GAAG,CAAC,CAAC;QAEvB,kEAAkE;QAClE,MAAM,uCAAuC,CAAC,GAAG,CAAC,CAAC;QAEnD,OAAO,CAAC,0DAA0D,CAAC,CAAC;IACxE,CAAC;;AApEe;;;;WAAc,6DAA6D;UACzF,yJAAyJ;UACzJ,4BAA4B,iBAAiB,mBAAmB,yBAAyB,wCAAwC;UACjI,iEAAiE;UACjE,8BAA8B,yBAAyB,6CAA6C;GAAC;AAEvF;;;;WAAO;QACnB,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC;YACnB,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,kEAAkE;SAClF,CAAC;KACL;GAAC;AAEc;;;;WAAQ;QACpB,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC;YACf,IAAI,EAAE,GAAG;YACT,WAAW,EACP,uIAAuI;YAC3I,QAAQ,EAAE,KAAK;SAClB,CAAC;KACL;GAAC"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ export declare class LoginCommand extends ApifyCommand<typeof LoginCommand> {
3
3
  static description: string;
4
4
  static flags: {
5
5
  token: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
6
+ method: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
6
7
  };
7
8
  run(): Promise<void>;
8
9
  }
@@ -1 +1 @@
1
- {"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAKvD,qBAAa,YAAa,SAAQ,YAAY,CAAC,OAAO,YAAY,CAAC;IAC/D,OAAgB,WAAW,SAEU;IAErC,OAAgB,KAAK;;MAMnB;IAEI,GAAG;CAgBZ"}
1
+ {"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AA0BvD,qBAAa,YAAa,SAAQ,YAAY,CAAC,OAAO,YAAY,CAAC;IAC/D,OAAgB,WAAW,SAEU;IAErC,OAAgB,KAAK;;;MAYnB;IAEI,GAAG;CA6HZ"}
@@ -1,30 +1,155 @@
1
+ import { cryptoRandomObjectId } from '@apify/utilities';
1
2
  import { Flags } from '@oclif/core';
3
+ import computerName from 'computer-name';
4
+ import cors from 'cors';
5
+ import express from 'express';
2
6
  import inquirer from 'inquirer';
7
+ import open from 'open';
3
8
  import { ApifyCommand } from '../lib/apify_command.js';
4
- import { error, success } from '../lib/outputs.js';
9
+ import { error, info, success } from '../lib/outputs.js';
5
10
  import { useApifyIdentity } from '../lib/telemetry.js';
6
11
  import { getLocalUserInfo, getLoggedClient } from '../lib/utils.js';
12
+ const CONSOLE_BASE_URL = 'https://console.apify.com/account?tab=integrations';
13
+ // const CONSOLE_BASE_URL = 'http://localhost:3000/account?tab=integrations';
14
+ const CONSOLE_URL_ORIGIN = new URL(CONSOLE_BASE_URL).origin;
15
+ const API_BASE_URL = CONSOLE_BASE_URL.includes('localhost') ? 'http://localhost:3333' : undefined;
16
+ // Not really checked right now, but it might come useful if we ever need to do some breaking changes
17
+ const API_VERSION = 'v1';
18
+ const tryToLogin = async (token) => {
19
+ const isUserLogged = await getLoggedClient(token, API_BASE_URL);
20
+ const userInfo = await getLocalUserInfo();
21
+ if (isUserLogged) {
22
+ await useApifyIdentity(userInfo.id);
23
+ success({ message: `You are logged in to Apify as ${userInfo.username || userInfo.id}!` });
24
+ }
25
+ else {
26
+ error({ message: 'Login to Apify failed, the provided API token is not valid.' });
27
+ }
28
+ return isUserLogged;
29
+ };
7
30
  export class LoginCommand extends ApifyCommand {
8
31
  async run() {
9
- let { token } = this.flags;
10
- if (!token) {
32
+ const { token, method } = this.flags;
33
+ if (token) {
34
+ await tryToLogin(token);
35
+ return;
36
+ }
37
+ let selectedMethod = method;
38
+ if (!method) {
39
+ const answer = await inquirer.prompt([{
40
+ type: 'list',
41
+ name: 'loginMethod',
42
+ message: 'Choose how you want to log in to Apify',
43
+ choices: [
44
+ {
45
+ value: 'console',
46
+ name: 'Through Apify Console in your default browser',
47
+ short: 'Through Apify Console',
48
+ },
49
+ { value: 'manual', name: 'Enter API token manually', short: 'Manually' },
50
+ ],
51
+ loop: true,
52
+ }]);
53
+ selectedMethod = answer.loginMethod;
54
+ }
55
+ if (selectedMethod === 'console') {
56
+ let server;
57
+ const app = express();
58
+ // To send requests from browser to localhost, CORS has to be configured properly
59
+ app.use(cors({
60
+ origin: CONSOLE_URL_ORIGIN,
61
+ allowedHeaders: ['Content-Type', 'Authorization'],
62
+ }));
63
+ // Turn off keepalive, otherwise closing the server when command is finished is lagging
64
+ app.use((_, res, next) => {
65
+ res.set('Connection', 'close');
66
+ next();
67
+ });
68
+ app.use(express.json());
69
+ // Basic authorization via a random token, which is passed to the Apify Console,
70
+ // and that sends it back via the `token` query param, or `Authorization` header
71
+ const authToken = cryptoRandomObjectId();
72
+ app.use((req, res, next) => {
73
+ let { token: serverToken } = req.query;
74
+ if (!serverToken) {
75
+ const authorizationHeader = req.get('Authorization');
76
+ if (authorizationHeader) {
77
+ const [schema, tokenFromHeader, ...extra] = authorizationHeader.trim().split(/\s+/);
78
+ if (schema.toLowerCase() === 'bearer' && tokenFromHeader && extra.length === 0) {
79
+ serverToken = tokenFromHeader;
80
+ }
81
+ }
82
+ }
83
+ if (serverToken !== authToken) {
84
+ res.status(401);
85
+ res.send('Authorization failed');
86
+ }
87
+ else {
88
+ next();
89
+ }
90
+ });
91
+ const apiRouter = express.Router();
92
+ app.use(`/api/${API_VERSION}`, apiRouter);
93
+ apiRouter.post('/login-token', async (req, res) => {
94
+ try {
95
+ if (req.body.apiToken) {
96
+ await tryToLogin(req.body.apiToken);
97
+ }
98
+ else {
99
+ throw new Error('Request did not contain API token');
100
+ }
101
+ res.end();
102
+ }
103
+ catch (err) {
104
+ const errorMessage = `Login to Apify failed with error: ${err.message}`;
105
+ error({ message: errorMessage });
106
+ res.status(500);
107
+ res.send(errorMessage);
108
+ }
109
+ server.close();
110
+ });
111
+ apiRouter.post('/exit', (req, res) => {
112
+ if (req.body.isWindowClosed) {
113
+ error({ message: 'Login to Apify failed, the console window was closed.' });
114
+ }
115
+ else if (req.body.actionCanceled) {
116
+ error({ message: 'Login to Apify failed, the action was canceled in the Apify Console.' });
117
+ }
118
+ else {
119
+ error({ message: 'Login to Apify failed.' });
120
+ }
121
+ res.end();
122
+ server.close();
123
+ });
124
+ // Listening on port 0 will assign a random available port
125
+ server = app.listen(0);
126
+ const { port } = server.address();
127
+ const consoleUrl = new URL(CONSOLE_BASE_URL);
128
+ consoleUrl.searchParams.set('localCliCommand', 'login');
129
+ consoleUrl.searchParams.set('localCliPort', `${port}`);
130
+ consoleUrl.searchParams.set('localCliToken', authToken);
131
+ consoleUrl.searchParams.set('localCliApiVersion', API_VERSION);
132
+ try {
133
+ consoleUrl.searchParams.set('localCliComputerName', encodeURIComponent(computerName()));
134
+ }
135
+ catch {
136
+ // Ignore errors from fetching computer name as it's not critical
137
+ }
138
+ info({ message: `Opening Apify Console at "${consoleUrl.href}"...` });
139
+ await open(consoleUrl.href);
140
+ }
141
+ else {
11
142
  console.log('Enter your Apify API token. You can find it at https://console.apify.com/account#/integrations');
12
- const tokenPrompt = await inquirer.prompt([{ name: 'token', message: 'token:', type: 'password' }]);
13
- ({ token } = tokenPrompt);
143
+ const tokenAnswer = await inquirer.prompt([{ name: 'token', message: 'token:', type: 'password' }]);
144
+ await tryToLogin(tokenAnswer.token);
14
145
  }
15
- const isUserLogged = await getLoggedClient(token);
16
- const userInfo = await getLocalUserInfo();
17
- await useApifyIdentity(userInfo.id);
18
- return isUserLogged
19
- ? success(`You are logged in to Apify as ${userInfo.username || userInfo.id}!`)
20
- : error('Login to Apify failed, the provided API token is not valid.');
21
146
  }
22
147
  }
23
148
  Object.defineProperty(LoginCommand, "description", {
24
149
  enumerable: true,
25
150
  configurable: true,
26
151
  writable: true,
27
- value: 'Logs in to your Apify account using a provided API token.\nThe API token and other account '
152
+ value: 'Logs in to your Apify account.\nThe API token and other account '
28
153
  + 'information is stored in the ~/.apify directory, from where it is read by all other "apify" commands. '
29
154
  + 'To log out, call "apify logout".'
30
155
  });
@@ -38,6 +163,12 @@ Object.defineProperty(LoginCommand, "flags", {
38
163
  description: '[Optional] Apify API token',
39
164
  required: false,
40
165
  }),
166
+ method: Flags.string({
167
+ char: 'm',
168
+ description: '[Optional] Method of logging in to Apify',
169
+ options: ['console', 'manual'],
170
+ required: false,
171
+ }),
41
172
  }
42
173
  });
43
174
  //# sourceMappingURL=login.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"login.js","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,QAAQ,MAAM,UAAU,CAAC;AAEhC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEpE,MAAM,OAAO,YAAa,SAAQ,YAAiC;IAa/D,KAAK,CAAC,GAAG;QACL,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QAE3B,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,OAAO,CAAC,GAAG,CAAC,gGAAgG,CAAC,CAAC;YAC9G,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAoB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC;YACvH,CAAC,EAAE,KAAK,EAAE,GAAG,WAAW,CAAC,CAAC;QAC9B,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,eAAe,CAAC,KAAK,CAAC,CAAC;QAClD,MAAM,QAAQ,GAAG,MAAM,gBAAgB,EAAE,CAAC;QAC1C,MAAM,gBAAgB,CAAC,QAAQ,CAAC,EAAG,CAAC,CAAC;QACrC,OAAO,YAAY;YACf,CAAC,CAAC,OAAO,CAAC,iCAAiC,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,EAAE,GAAG,CAAC;YAC/E,CAAC,CAAC,KAAK,CAAC,6DAA6D,CAAC,CAAC;IAC/E,CAAC;;AA3Be;;;;WAAc,6FAA6F;UACzH,wGAAwG;UACxG,kCAAkC;GAAC;AAErB;;;;WAAQ;QACpB,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC;YAChB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,4BAA4B;YACzC,QAAQ,EAAE,KAAK;SAClB,CAAC;KACL;GAAC"}
1
+ {"version":3,"file":"login.js","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@ export class LogoutCommand extends ApifyCommand {
7
7
  async run() {
8
8
  await rimrafPromised(AUTH_FILE_PATH());
9
9
  regenerateLocalDistinctId();
10
- success('You are logged out from your Apify account.');
10
+ success({ message: 'You are logged out from your Apify account.' });
11
11
  }
12
12
  }
13
13
  Object.defineProperty(LogoutCommand, "description", {
@@ -1 +1 @@
1
- {"version":3,"file":"logout.js","sourceRoot":"","sources":["../../src/commands/logout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAEhE,MAAM,OAAO,aAAc,SAAQ,YAAkC;IAIjE,KAAK,CAAC,GAAG;QACL,MAAM,cAAc,CAAC,cAAc,EAAE,CAAC,CAAC;QACvC,yBAAyB,EAAE,CAAC;QAC5B,OAAO,CAAC,6CAA6C,CAAC,CAAC;IAC3D,CAAC;;AAPe;;;;WAAc,mFAAmF;UAC/G,4FAA4F;GAAC"}
1
+ {"version":3,"file":"logout.js","sourceRoot":"","sources":["../../src/commands/logout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAEhE,MAAM,OAAO,aAAc,SAAQ,YAAkC;IAIjE,KAAK,CAAC,GAAG;QACL,MAAM,cAAc,CAAC,cAAc,EAAE,CAAC,CAAC;QACvC,yBAAyB,EAAE,CAAC;QAC5B,OAAO,CAAC,EAAE,OAAO,EAAE,6CAA6C,EAAE,CAAC,CAAC;IACxE,CAAC;;AAPe;;;;WAAc,mFAAmF;UAC/G,4FAA4F;GAAC"}
@@ -54,7 +54,7 @@ export class PullCommand extends ApifyCommand {
54
54
  const dirpath = isActorAutomaticallyDetected ? cwd : join(cwd, name);
55
55
  mkdirSync(dirpath, { recursive: true });
56
56
  if (!isActorAutomaticallyDetected && !(readdirSync(dirpath).length === 0)) {
57
- error(`Directory ${dirpath} is not empty. Please empty it or choose another directory.`);
57
+ error({ message: `Directory ${dirpath} is not empty. Please empty it or choose another directory.` });
58
58
  return;
59
59
  }
60
60
  switch (correctVersion.sourceType) {
@@ -111,7 +111,7 @@ export class PullCommand extends ApifyCommand {
111
111
  default:
112
112
  throw new Error(`Unknown source type: ${correctVersion.sourceType}`);
113
113
  }
114
- success(isActorAutomaticallyDetected ? `Actor ${name} updated at ${dirpath}/` : `Pulled to ${dirpath}/`);
114
+ success({ message: isActorAutomaticallyDetected ? `Actor ${name} updated at ${dirpath}/` : `Pulled to ${dirpath}/` });
115
115
  }
116
116
  }
117
117
  Object.defineProperty(PullCommand, "description", {
@@ -1 +1 @@
1
- {"version":3,"file":"pull.js","sourceRoot":"","sources":["../../src/commands/pull.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pull.js","sourceRoot":"","sources":["../../src/commands/pull.ts"],"names":[],"mappings":"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"}
@@ -7,10 +7,12 @@ export declare class PushCommand extends ApifyCommand<typeof PushCommand> {
7
7
  'build-tag': import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
8
8
  'wait-for-finish': import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
9
9
  'no-prompt': import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
10
+ force: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
10
11
  };
11
12
  static args: {
12
13
  actorId: import("@oclif/core/lib/interfaces/parser.js").Arg<string | undefined, Record<string, unknown>>;
13
14
  };
15
+ catch(caughtError: Error): Promise<void>;
14
16
  run(): Promise<void>;
15
17
  }
16
18
  //# sourceMappingURL=push.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"push.d.ts","sourceRoot":"","sources":["../../src/commands/push.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AA6BvD,qBAAa,WAAY,SAAQ,YAAY,CAAC,OAAO,WAAW,CAAC;IAC7D,OAAgB,WAAW,SAIoE;IAE/F,OAAgB,KAAK;;;;;;MA2BnB;IAEF,OAAgB,IAAI;;MAMlB;IAEI,GAAG;CAmKZ"}
1
+ {"version":3,"file":"push.d.ts","sourceRoot":"","sources":["../../src/commands/push.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AA6BvD,qBAAa,WAAY,SAAQ,YAAY,CAAC,OAAO,WAAW,CAAC;IAC7D,OAAgB,WAAW,SAI4H;IAEvJ,OAAgB,KAAK;;;;;;;MAgCnB;IAEF,OAAgB,IAAI;;MAMlB;IAGa,KAAK,CAAC,WAAW,EAAE,KAAK;IAIjC,GAAG;CA8NZ"}
@@ -1,4 +1,5 @@
1
- import { readFileSync, unlinkSync } from 'node:fs';
1
+ import { readFileSync, unlinkSync, statSync } from 'node:fs';
2
+ import { join } from 'node:path';
2
3
  import process from 'node:process';
3
4
  import { fetchManifest } from '@apify/actor-templates';
4
5
  import { ACTOR_JOB_STATUSES, ACTOR_SOURCE_TYPES, MAX_MULTIFILE_BYTES } from '@apify/consts';
@@ -7,7 +8,7 @@ import inquirer from 'inquirer';
7
8
  import isCI from 'is-ci';
8
9
  import open from 'open';
9
10
  import { ApifyCommand } from '../lib/apify_command.js';
10
- import { LOCAL_CONFIG_PATH, UPLOADS_STORE_NAME } from '../lib/consts.js';
11
+ import { CommandExitCodes, DEPRECATED_LOCAL_CONFIG_NAME, LOCAL_CONFIG_PATH, UPLOADS_STORE_NAME } from '../lib/consts.js';
11
12
  import { sumFilesSizeInBytes } from '../lib/files.js';
12
13
  import { error, info, link, run, success, warning } from '../lib/outputs.js';
13
14
  import { transformEnvToEnvVars } from '../lib/secrets.js';
@@ -21,12 +22,43 @@ const DEFAULT_RUN_OPTIONS = {
21
22
  const DEFAULT_ACTOR_VERSION_NUMBER = '0.0';
22
23
  // It would be better to use `version-0.0` or similar,
23
24
  // or even have no default tag, but the platform complains when
24
- // actor does not have a build with a `latest` tag, so until
25
+ // Actor does not have a build with a `latest` tag, so until
25
26
  // that changes, we have to add it.
26
27
  const DEFAULT_BUILD_TAG = 'latest';
27
28
  export class PushCommand extends ApifyCommand {
29
+ // TODO: Global handler in ApifyCommand
30
+ async catch(caughtError) {
31
+ throw caughtError;
32
+ }
28
33
  async run() {
29
34
  const cwd = process.cwd();
35
+ // Validate there are files before rest of the logic
36
+ const filePathsToPush = await getActorLocalFilePaths(cwd);
37
+ if (!filePathsToPush.length) {
38
+ error({ message: 'You need to call this command from a folder that has an Actor in it!' });
39
+ process.exitCode = CommandExitCodes.NoFilesToPush;
40
+ return;
41
+ }
42
+ if (
43
+ // Check that some of these files exist, cuz otherwise we cannot do much
44
+ ![
45
+ // old apify project
46
+ DEPRECATED_LOCAL_CONFIG_NAME,
47
+ // new apify project
48
+ 'actor.json',
49
+ '.actor/actor.json',
50
+ // The .actor folder existing in general
51
+ '.actor',
52
+ ].some((filePath) => filePathsToPush.some((fp) => fp === filePath || fp.startsWith(filePath)))) {
53
+ error({
54
+ message: [
55
+ 'A valid Actor could not be found in the current directory. Please make sure you are in the correct directory.',
56
+ 'You can also turn this directory into an Actor by running `apify init`.',
57
+ ].join('\n'),
58
+ });
59
+ process.exitCode = CommandExitCodes.NoFilesToPush;
60
+ return;
61
+ }
30
62
  const apifyClient = await getLoggedClientOrThrow();
31
63
  const localConfig = await getLocalConfigOrThrow(cwd);
32
64
  const userInfo = await getLocalUserInfo();
@@ -34,7 +66,8 @@ export class PushCommand extends ApifyCommand {
34
66
  const redirectUrlPart = isOrganizationLoggedIn ? `/organization/${userInfo.id}` : '';
35
67
  let actorId;
36
68
  let actor;
37
- // User can override actor version and build tag, attributes in localConfig will remain same.
69
+ let isActorCreatedNow = false;
70
+ // User can override Actor version and build tag, attributes in localConfig will remain same.
38
71
  const version = this.flags.version || this.flags.versionNumber || localConfig?.version || DEFAULT_ACTOR_VERSION_NUMBER;
39
72
  let buildTag = this.flags.buildTag || localConfig.buildTag;
40
73
  // We can't add the default build tag to everything. If a user creates a new
@@ -47,8 +80,8 @@ export class PushCommand extends ApifyCommand {
47
80
  const waitForFinishMillis = Number.isNaN(this.flags.waitForFinish)
48
81
  ? undefined
49
82
  : Number.parseInt(this.flags.waitForFinish, 10) * 1000;
50
- // User can override actorId of pushing actor.
51
- // It causes that we push actor to this id but attributes in localConfig will remain same.
83
+ // User can override actorId of pushing Actor.
84
+ // It causes that we push Actor to this id but attributes in localConfig will remain same.
52
85
  const forceActorId = this.args.actorId;
53
86
  if (forceActorId) {
54
87
  actor = (await apifyClient.actor(forceActorId).get());
@@ -79,23 +112,38 @@ export class PushCommand extends ApifyCommand {
79
112
  };
80
113
  actor = await apifyClient.actors().create(newActor);
81
114
  actorId = actor.id;
82
- info(`Created Actor with name ${localConfig.name} on Apify.`);
115
+ isActorCreatedNow = true;
116
+ info({ message: `Created Actor with name ${localConfig.name} on Apify.` });
83
117
  }
84
118
  }
85
- info(`Deploying Actor '${localConfig.name}' to Apify.`);
86
- const filePathsToPush = await getActorLocalFilePaths(cwd);
119
+ info({ message: `Deploying Actor '${localConfig.name}' to Apify.` });
87
120
  const filesSize = await sumFilesSizeInBytes(filePathsToPush, cwd);
88
121
  const actorClient = apifyClient.actor(actorId);
89
122
  let sourceType;
90
123
  let sourceFiles;
91
124
  let tarballUrl;
92
125
  if (filesSize < MAX_MULTIFILE_BYTES) {
126
+ const client = await actorClient.get();
127
+ if (!isActorCreatedNow) {
128
+ // Check when was files modified last
129
+ const mostRecentModifiedFileMs = filePathsToPush.reduce((modifiedMs, filePath) => {
130
+ const { mtimeMs, ctimeMs } = statSync(join(cwd, filePath));
131
+ // Sometimes it's possible mtimeMs is some messed up value (like 2000/01/01 midnight), then we want to check created if it's newer
132
+ const fileModifiedMs = mtimeMs > ctimeMs ? mtimeMs : ctimeMs;
133
+ return modifiedMs > fileModifiedMs ? modifiedMs : fileModifiedMs;
134
+ }, 0);
135
+ const actorModifiedMs = client?.modifiedAt.valueOf();
136
+ if (!this.flags.force && actorModifiedMs && mostRecentModifiedFileMs < actorModifiedMs && (localConfig?.name || forceActorId)) {
137
+ throw new Error(`Actor with identifier "${localConfig?.name || forceActorId}" is already on the platform and was modified there since modified locally.
138
+ Skipping push. Use --force to override.`);
139
+ }
140
+ }
93
141
  sourceFiles = await createSourceFiles(filePathsToPush, cwd);
94
142
  sourceType = ACTOR_SOURCE_TYPES.SOURCE_FILES;
95
143
  }
96
144
  else {
97
145
  // Create zip
98
- run('Zipping Actor files');
146
+ run({ message: 'Zipping Actor files' });
99
147
  await createActZip(TEMP_ZIP_FILE_NAME, filePathsToPush, cwd);
100
148
  // Upload it to Apify.keyValueStores
101
149
  const store = await apifyClient.keyValueStores().getOrCreate(UPLOADS_STORE_NAME);
@@ -111,7 +159,7 @@ export class PushCommand extends ApifyCommand {
111
159
  tarballUrl = `${apifyClient.baseUrl}/key-value-stores/${store.id}/records/${key}?disableRedirect=true`;
112
160
  sourceType = ACTOR_SOURCE_TYPES.TARBALL;
113
161
  }
114
- // Update actor version
162
+ // Update Actor version
115
163
  const actorCurrentVersion = await actorClient.version(version).get();
116
164
  const envVars = localConfig.environmentVariables
117
165
  ? transformEnvToEnvVars(localConfig.environmentVariables)
@@ -120,7 +168,7 @@ export class PushCommand extends ApifyCommand {
120
168
  const actorVersionModifier = { tarballUrl, sourceFiles, buildTag, sourceType, envVars };
121
169
  // TODO: fix this type too -.-
122
170
  await actorClient.version(version).update(actorVersionModifier);
123
- run(`Updated version ${version} for Actor ${actor.name}.`);
171
+ run({ message: `Updated version ${version} for Actor ${actor.name}.` });
124
172
  }
125
173
  else {
126
174
  const actorNewVersion = {
@@ -134,10 +182,10 @@ export class PushCommand extends ApifyCommand {
134
182
  await actorClient.versions().create({
135
183
  ...actorNewVersion,
136
184
  });
137
- run(`Created version ${version} for Actor ${actor.name}.`);
185
+ run({ message: `Created version ${version} for Actor ${actor.name}.` });
138
186
  }
139
- // Build actor on Apify and wait for build to finish
140
- run(`Building Actor ${actor.name}`);
187
+ // Build Actor on Apify and wait for build to finish
188
+ run({ message: `Building Actor ${actor.name}` });
141
189
  let build = await actorClient.build(version, {
142
190
  useCache: true,
143
191
  waitForFinish: 2, // NOTE: We need to wait some time to Apify open stream and we can create connection
@@ -146,11 +194,11 @@ export class PushCommand extends ApifyCommand {
146
194
  await outputJobLog(build, waitForFinishMillis);
147
195
  }
148
196
  catch (err) {
149
- warning('Can not get log:');
197
+ warning({ message: 'Can not get log:' });
150
198
  console.error(err);
151
199
  }
152
200
  build = (await apifyClient.build(build.id).get());
153
- link('Actor build detail', `https://console.apify.com${redirectUrlPart}/actors/${build.actId}#/builds/${build.buildNumber}`);
201
+ link({ message: 'Actor build detail', url: `https://console.apify.com${redirectUrlPart}/actors/${build.actId}#/builds/${build.buildNumber}` });
154
202
  // Disable open browser on CI, or if user passed --no-prompt flag
155
203
  if (!isCI && !this.flags.noPrompt) {
156
204
  const shouldOpenBrowser = await inquirer.prompt([
@@ -161,26 +209,29 @@ export class PushCommand extends ApifyCommand {
161
209
  }
162
210
  }
163
211
  if (build.status === ACTOR_JOB_STATUSES.SUCCEEDED) {
164
- success('Actor was deployed to Apify cloud and built there.');
212
+ success({ message: 'Actor was deployed to Apify cloud and built there.' });
165
213
  // @ts-expect-error FIX THESE TYPES 😢
166
214
  }
167
215
  else if (build.status === ACTOR_JOB_STATUSES.READY) {
168
- warning('Build is waiting for allocation.');
216
+ warning({ message: 'Build is waiting for allocation.' });
169
217
  // @ts-expect-error FIX THESE TYPES 😢
170
218
  }
171
219
  else if (build.status === ACTOR_JOB_STATUSES.RUNNING) {
172
- warning('Build is still running.');
220
+ warning({ message: 'Build is still running.' });
173
221
  // @ts-expect-error FIX THESE TYPES 😢
174
222
  }
175
223
  else if (build.status === ACTOR_JOB_STATUSES.ABORTED || build.status === ACTOR_JOB_STATUSES.ABORTING) {
176
- warning('Build was aborted!');
224
+ warning({ message: 'Build was aborted!' });
225
+ process.exitCode = CommandExitCodes.BuildAborted;
177
226
  // @ts-expect-error FIX THESE TYPES 😢
178
227
  }
179
228
  else if (build.status === ACTOR_JOB_STATUSES.TIMED_OUT || build.status === ACTOR_JOB_STATUSES.TIMING_OUT) {
180
- warning('Build timed out!');
229
+ warning({ message: 'Build timed out!' });
230
+ process.exitCode = CommandExitCodes.BuildTimedOut;
181
231
  }
182
232
  else {
183
- error('Build failed!');
233
+ error({ message: 'Build failed!' });
234
+ process.exitCode = CommandExitCodes.BuildFailed;
184
235
  }
185
236
  }
186
237
  }
@@ -192,7 +243,7 @@ Object.defineProperty(PushCommand, "description", {
192
243
  + `The Actor settings are read from the "${LOCAL_CONFIG_PATH}" file in the current directory, but they can be overridden using command-line options.\n`
193
244
  + `NOTE: If the source files are smaller than ${MAX_MULTIFILE_BYTES / (1024 ** 2)} MB then they are uploaded as \n`
194
245
  + '"Multiple source files", otherwise they are uploaded as "Zip file".\n\n'
195
- + 'WARNING: If the target Actor already exists in your Apify account, it will be overwritten!'
246
+ + 'When there\'s an attempt to push files that are older than the Actor on the platform, the command will fail. Can be overwritten with --force flag.'
196
247
  });
197
248
  Object.defineProperty(PushCommand, "flags", {
198
249
  enumerable: true,
@@ -225,6 +276,11 @@ Object.defineProperty(PushCommand, "flags", {
225
276
  default: false,
226
277
  required: false,
227
278
  }),
279
+ force: Flags.boolean({
280
+ description: 'Push an Actor even when the local files are older than the Actor on the platform.',
281
+ default: false,
282
+ required: false,
283
+ }),
228
284
  }
229
285
  });
230
286
  Object.defineProperty(PushCommand, "args", {
@@ -1 +1 @@
1
- {"version":3,"file":"push.js","sourceRoot":"","sources":["../../src/commands/push.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"push.js","sourceRoot":"","sources":["../../src/commands/push.ts"],"names":[],"mappings":"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"}