deploy-webapp 1.0.7 → 1.0.9

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.
@@ -44,7 +44,6 @@ const _2_workflow_step_1 = require("./functions/2_workflow_step");
44
44
  const _3_client_function_1 = require("./functions/3_client_function");
45
45
  const _4_workflow_form_groups_1 = require("./functions/4_workflow_form_groups");
46
46
  const _1_workflow_1 = require("./functions/1_workflow");
47
- const logsDirectory = path.resolve(__dirname, "./utils");
48
47
  const runMigration = async () => {
49
48
  if (!constants_1.emailLoginQA || !constants_1.passwordLoginQA || !constants_1.emailLoginPROD || !constants_1.passwordLoginPROD || !constants_1.client || !constants_1.serviceKey) {
50
49
  throw new Error("Variáveis de ambiente WEBAPP_QA_EMAIL_LOGIN, WEBAPP_QA_PASSWORD_LOGIN, WEBAPP_PROD_EMAIL_LOGIN, WEBAPP_PROD_PASSWORD_LOGIN, CLIENT_ID e/ou SERVICE_KEY não definidas");
@@ -55,10 +54,19 @@ const runMigration = async () => {
55
54
  (0, console_1.log)(`${constants_1.cor.Yellow}Históricos limpos. Iniciando migração...${constants_1.cor.Reset}`);
56
55
  const access_token_qa = await (0, qa_client_1.loginQA)(constants_1.client, constants_1.serviceKey, constants_1.emailLoginQA, constants_1.passwordLoginQA);
57
56
  const access_token_prod = await (0, prod_client_1.loginPROD)(constants_1.client, constants_1.serviceKey, constants_1.emailLoginPROD, constants_1.passwordLoginPROD);
58
- const updateWorkflow = path.resolve(logsDirectory, "updateWorkflow.json");
57
+ // Procurar arquivos na raiz do projeto (process.cwd())
58
+ const projectRoot = process.cwd();
59
+ const updateWorkflow = path.resolve(projectRoot, "updateWorkflow.json");
60
+ const csvFilePath = path.resolve(projectRoot, "ids.csv");
61
+ // Verificar se os arquivos existem
62
+ if (!fs.existsSync(updateWorkflow)) {
63
+ throw new Error(`Arquivo updateWorkflow.json não encontrado em: ${projectRoot}\nCertifique-se de que o arquivo está na raiz do projeto.`);
64
+ }
65
+ if (!fs.existsSync(csvFilePath)) {
66
+ throw new Error(`Arquivo ids.csv não encontrado em: ${projectRoot}\nCertifique-se de que o arquivo está na raiz do projeto.`);
67
+ }
59
68
  const getUpdateWorkflow = fs.readFileSync(updateWorkflow, "utf8");
60
69
  const updateWorkflowData = JSON.parse(getUpdateWorkflow);
61
- const csvFilePath = path.resolve(logsDirectory, "ids.csv");
62
70
  const csv = require("csvtojson");
63
71
  const jsonArray = await csv({ delimiter: ";" }).fromFile(csvFilePath);
64
72
  const arrayIds = jsonArray.map((row) => ({
@@ -14,7 +14,16 @@ const dotenv_1 = __importDefault(require("dotenv"));
14
14
  const fs_1 = __importDefault(require("fs"));
15
15
  const path_1 = __importDefault(require("path"));
16
16
  dotenv_1.default.config();
17
- const logsDirectory = path_1.default.resolve(__dirname);
17
+ // Determinar o diretório de trabalho correto
18
+ // Se estiver em node_modules, usar process.cwd() (raiz do projeto)
19
+ // Caso contrário, usar __dirname (modo desenvolvimento)
20
+ function getWorkingDirectory() {
21
+ if (__dirname.includes('node_modules')) {
22
+ return process.cwd();
23
+ }
24
+ return __dirname;
25
+ }
26
+ const logsDirectory = getWorkingDirectory();
18
27
  exports.client = process.env.CLIENT;
19
28
  exports.serviceKey = process.env.SERVICE_KEY;
20
29
  exports.clientIdQA = process.env.CLIENT_ID_QA;
package/install.js CHANGED
@@ -52,19 +52,37 @@ const filesToCopy = [
52
52
  const migrateJsContent = `require('dotenv').config();
53
53
  const { runMigration } = require('deploy-webapp');
54
54
 
55
- console.log('🚀 Iniciando migração de workflows...\\n');
55
+ console.log('🚀 Iniciando deploy...\n');
56
56
 
57
57
  runMigration()
58
58
  .then(() => {
59
- console.log('\\n✅ Migração concluída com sucesso!');
59
+ console.log('\n✅ Deploy concluído com sucesso!');
60
60
  process.exit(0);
61
61
  })
62
62
  .catch((error) => {
63
- console.error('\\n❌ Erro na migração:', error);
63
+ console.error('\n❌ Erro no deploy:', error);
64
64
  process.exit(1);
65
65
  });
66
66
  `;
67
67
 
68
+ // Conteúdo do arquivo .env template a ser criado
69
+ const envTemplateContent = `# Configurações Gerais
70
+ CLIENT=seu_client_id
71
+ SERVICE_KEY=sua_service_key
72
+
73
+ # Ambiente QA
74
+ CLIENT_ID_QA=client_id_qa
75
+ EMAIL_LOGIN_QA=email@qa.com
76
+ PASSWORD_LOGIN_QA=senha_qa
77
+ URL_QA=https://url-qa.com
78
+
79
+ # Ambiente PROD
80
+ CLIENT_ID_PROD=client_id_prod
81
+ EMAIL_LOGIN_PROD=email@prod.com
82
+ PASSWORD_LOGIN_PROD=senha_prod
83
+ URL_PROD=https://url-prod.com
84
+ `;
85
+
68
86
  // Verificar se estamos em node_modules (instalação do pacote)
69
87
  const isInstalled = packagePath.includes('node_modules');
70
88
 
@@ -126,6 +144,20 @@ if (!fs.existsSync(migrateJsPath)) {
126
144
  console.log('ℹ️ deploy-webapp: migrate.js já existe, mantendo arquivo existente.');
127
145
  }
128
146
 
147
+ // Criar arquivo .env se não existir
148
+ const envPath = path.join(projectRoot, '.env');
149
+ if (!fs.existsSync(envPath)) {
150
+ try {
151
+ fs.writeFileSync(envPath, envTemplateContent, 'utf8');
152
+ console.log('✅ deploy-webapp: .env criado com sucesso!');
153
+ copiedCount++;
154
+ } catch (error) {
155
+ console.error('❌ deploy-webapp: Erro ao criar .env:', error.message);
156
+ }
157
+ } else {
158
+ console.log('ℹ️ deploy-webapp: .env já existe, mantendo arquivo existente.');
159
+ }
160
+
129
161
  // Atualizar package.json com scripts se necessário
130
162
  const packageJsonPath = path.join(projectRoot, 'package.json');
131
163
  if (fs.existsSync(packageJsonPath)) {
@@ -214,11 +246,11 @@ if (copiedCount > 0) {
214
246
  console.log(`\n✨ deploy-webapp: ${copiedCount} arquivo(s) criado(s) automaticamente na raiz do projeto!`);
215
247
  console.log(`\n📝 Arquivos criados em: ${projectRoot}`);
216
248
  console.log('\n📋 Próximos passos:');
217
- console.log(' 1. ✏️ Edite ids.csv com os IDs dos workflows que deseja migrar');
218
- console.log(' 2. ✏️ Edite updateWorkflow.json com suas configurações específicas');
219
- console.log(' 3. 🔐 Crie o arquivo .env na raiz com suas credenciais (veja README.md)');
249
+ console.log(' 1. 🔐 Edite .env com suas credenciais (substitua os valores de exemplo)');
250
+ console.log(' 2. ✏️ Edite ids.csv com os IDs dos workflows que deseja migrar');
251
+ console.log(' 3. ✏️ Edite updateWorkflow.json com suas configurações específicas');
220
252
  console.log(' 4. 🚀 Execute: yarn start ou npm start\n');
221
- console.log('💡 Dica: Tudo está configurado! Basta editar os arquivos e executar yarn start!\n');
253
+ console.log('💡 Dica: Tudo está configurado! Basta preencher os valores e executar yarn start!\n');
222
254
  } else {
223
255
  console.log('\nℹ️ deploy-webapp: Todos os arquivos já existem na raiz do projeto.');
224
256
  console.log(' Execute: yarn start ou npm start para iniciar a migração.\n');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "deploy-webapp",
3
- "version": "1.0.7",
3
+ "version": "1.0.9",
4
4
  "description": "Script para deploy de esteiras no WebApp.",
5
5
  "main": "dist/0_index.js",
6
6
  "bin": {
package/src/utils/ids.csv CHANGED
@@ -1,2 +1,2 @@
1
1
  workflow_id;
2
- cole os ids dos workflows que deseja deployar aqui
2
+ cole os ids dos workflows que deseja deployar aqui;