This action will find and replace strings in your project files.
This example replaces hello
with world
in all of your project files.
name: My Workflow
on: [push, pull_request]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@master
- name: Find and Replace
uses: jacobtomlinson/gha-find-replace@master
with:
find: "hello"
replace: "world"
Input | Description |
---|---|
find |
A string to find and replace in your project files. (This can be a regular expression) |
replace |
The string to replace it with. |
include (optional) |
A regular expression of files to include. Defaults to .* . |
exclude (optional) |
A regular expression of files to exclude. Defaults to .git/ . |
Output | Description |
---|---|
modifiedFiles |
The number of files that have been modified |
You can limit your find and replace to a directory.
name: My Workflow
on: [push, pull_request]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@master
- name: Find and Replace
uses: jacobtomlinson/gha-find-replace@master
with:
find: "hello"
replace: "world"
include: "justthisdirectory/"
You can limit your find and replace to just files with a specific name.
name: My Workflow
on: [push, pull_request]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@master
- name: Find and Replace
uses: jacobtomlinson/gha-find-replace@master
with:
find: "hello"
replace: "world"
include: "README.md" # Will match all README.md files in any nested directory
You can set your find and replace to ignore certain file types.
name: My Workflow
on: [push, pull_request]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@master
- name: Find and Replace
uses: jacobtomlinson/gha-find-replace@master
with:
find: "hello"
replace: "world"
exclude: "*.py" # Do not modify Python files
To publish a new version of this Action we need to update the Docker image tag in action.yml
and also create a new release on GitHub.
- Work out the next tag version number.
- Update the Docker image in
action.yml
. - Create a new release on GitHub with the same tag.