diff --git a/.idea/sonarlint/issuestore/index.pb b/.idea/sonarlint/issuestore/index.pb new file mode 100644 index 0000000..e69de29 diff --git a/.idea/sonarlint/securityhotspotstore/index.pb b/.idea/sonarlint/securityhotspotstore/index.pb new file mode 100644 index 0000000..e69de29 diff --git a/.idea/workspace.xml b/.idea/workspace.xml new file mode 100644 index 0000000..68b8b9b --- /dev/null +++ b/.idea/workspace.xml @@ -0,0 +1,14 @@ + + + + + { + "keyToString": { + "settings.editor.selected.configurable": "AndroidSdkUpdater" + } +} + \ No newline at end of file diff --git a/README.md b/README.md index 53c38fd..09146d8 100644 --- a/README.md +++ b/README.md @@ -73,4 +73,7 @@ jobs: # License -The scripts and documentation in this project are released under the [MIT License](LICENSE) \ No newline at end of file +The scripts and documentation in this project are released under the [MIT License](LICENSE) + +This is a fork from https://github.com/datamonsters/replace-action. +I created this action becasue the the old repository doesn't get updated for 3 years. diff --git a/action.yml b/action.yml index 900302a..e0b1f1e 100755 --- a/action.yml +++ b/action.yml @@ -1,4 +1,4 @@ -name: 'Replace Action' +name: 'Replace Action-Z' description: 'Replaces substrings in files. Useful to enrich configs with previous steps artifacts.' author: Data Monsters branding: @@ -12,5 +12,5 @@ inputs: description: 'Comma-separated pairs PLACEHOLDER=value' required: true runs: - using: 'node12' + using: 'node20' main: 'index.js' diff --git a/index.js b/index.js old mode 100755 new mode 100644 index 565db1e..ecb73a4 --- a/index.js +++ b/index.js @@ -1,39 +1,37 @@ -const core = require('@actions/core'); +import { getInput, setFailed } from "@actions/core"; try { - const files = core.getInput('files'); - const vars_string = core.getInput('replacements'); - var filenames = files.replace(' ', '').split(',') - var vars = vars_string.split(',') - console.log('files l:'+ filenames.length) - for(var fi = 0; fi < filenames.length; fi++) - { - var filename = filenames[fi] - var fs = require('fs') - console.log('file1: '+ fi + ' '+filename) - fs.readFile(filename, 'utf8', function (err,data) { + const files = getInput("files"); + const vars_string = getInput("replacements"); + const filenames = files.replace(" ", "").split(","); + const vars = vars_string.split(","); + console.log(`files l: ${filenames.length}`); + for (let fi = 0; fi < filenames.length; fi++) { + const filename = filenames[fi]; + const fs = require("fs"); + console.log(`file1: ${fi} ${n}`); + fs.readFile(filename, "utf8", function (err, data) { if (err) { console.log(err); } else { - var result = data - console.log(data) - for(var i = 0; i < vars.length; i++) - { - var firstEqual = vars[i].indexOf('='); - var key = vars[i].substr(0,firstEqual); - var value = vars[i].substr(firstEqual+1); - result = result.replace(key, value) + const result = data; + console.log(data); + for (let i = 0; i < vars.length; i++) { + const kv = vars[i].split('=') + const key = kv[0] + const value = kv[1] + console.log(`key: ${key}`); + console.log(`Value: ${value}`); + result = result.replace(key, value); } - console.log('file2: '+filename) - fs.writeFile(filename, result, 'utf8', function (err) { - if (err) - console.log(err) - else - console.log(result) + console.log(`file2: ${filename}`); + fs.writeFile(filename, result, "utf8", function (err) { + if (err) console.log(err); + else console.log(result); }); } }); } } catch (error) { - core.setFailed(error.message); + setFailed(error.message); } diff --git a/package.json b/package.json index 38aadf4..14a7a8e 100755 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "hello-world-javascript-action", - "version": "1.0.0", + "version": "2.0.5", "description": "This action prints \"Hello World\" or \"Hello\" + the name of a person to greet to the log.", "main": "index.js", "scripts": {