Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Empty file.
Empty file.
14 changes: 14 additions & 0 deletions .idea/workspace.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

5 changes: 4 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -73,4 +73,7 @@ jobs:

# License

The scripts and documentation in this project are released under the [MIT License](LICENSE)
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.
4 changes: 2 additions & 2 deletions action.yml
Original file line number Diff line number Diff line change
@@ -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:
Expand All @@ -12,5 +12,5 @@ inputs:
description: 'Comma-separated pairs PLACEHOLDER=value'
required: true
runs:
using: 'node12'
using: 'node20'
main: 'index.js'
52 changes: 25 additions & 27 deletions index.js
100755 → 100644
Original file line number Diff line number Diff line change
@@ -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);
}
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -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": {
Expand Down