Links

File System

File System plugin.
Available actions:
  • -> - write to file.
  • mkdir - create directory
  • rm - remove file or directory
  • mv - move file or directory
  • cp - copy file or directory
  • find - find files

Action Handler: Write to file

ID: com.fireblink.fbl.fs.file.write
Aliases:
  • fbl.fs.file.write
  • fs.file.write
  • file.write
  • ->
Example 1: Define File Content Inline
->:
# [optional] file path, if not provided content will be written to temporary location directory.
# Note: all missing parent directories will be automatically created
path: /tmp/test.txt
# [optional]
# Note: required if "path" (above) and "assignPathTo" (below) is not provided.
assignPathTo: # follows common assign logic practicies https://fbl.fireblink.com/plugins/common#assign-to
# [optional]
# Note: required if "path" and "assignPathTo" (above) is not provided
pushPathTo: # follows common push logic practicies https://fbl.fireblink.com/plugins/common#push-to
# [required] content of the file
content: |-
test content
Example 2: Define File Content From Other File
->:
# [optional] file path, if not provided content will be written to temporary location directory.
# Note: all missing parent directories will be automatically created
path: /tmp/test.txt
# [optional]
# Note: required if "path" (above) and "assignPathTo" (below) is not provided.
assignPathTo: # follows common assign logic practicies https://fbl.fireblink.com/plugins/common#push-to
# [optional]
# Note: required if "path" and "assignPathTo" (above) is not provided
pushPathTo: # follows common push logic practicies https://fbl.fireblink.com/plugins/common#push-to
# [required] template file
# Note: global and then local EJS template processing will be applied to the template before writing
contentFromFile: /tmp/template.ejs

Action Handler: Create Directories

Create directory (and all parent ones if missing).
ID: com.fireblink.fbl.fs.dir.create
Aliases:
  • fbl.fs.dir.create
  • fs.dir.create
  • dir.create
  • mkdir -p
  • mkdir
Example:
# create "child" directory
# if "parent" is missing it will be also created
mkdir: /tmp/parent/child

Action Handler: Remove File or Directory

Removes file or directory for given path.
ID: com.fireblink.fbl.fs.remove
Aliases:
  • fbl.fs.remove
  • fbl.fs.rm
  • fs.remove
  • fs.rm
  • rm -rf
  • remove
  • rm
# remove "child"
rm: /tmp/parent/child

Action Handler: Move File or Directory

Allows to move/rename file or entire directory.
ID: com.fireblink.fbl.fs.move
Aliases:
  • fbl.fs.move
  • fbl.fs.mv
  • fs.move
  • fs.mv
  • move
  • mv
Example 1: Move file to other folder
mv:
# move file.txt
from: /tmp/source/file.txt
# to "target" folder
# note: slash in the end is required if you want to specify a target folder
to: /tmp/target/
Example 2: Move file to other folder and rename it
mv:
# move file.txt
from: /tmp/source/file.txt
# to "target" folder and rename it to "renamed.txt"
to: /tmp/target/renamed.txt
Example 3: Move folder contents to other folder
mv:
# move everything from "source" folder
# note: slash in the end is required if you want to move folder contents rather then the folder itself
from: /tmp/source/
# to "target"
to: /tmp/target

Action Handler: Copy File or Directory

Allows to copy file or entire directory.
ID: com.fireblink.fbl.fs.copy
Aliases:
  • fbl.fs.copy
  • fbl.fs.cp
  • fs.copy
  • fs.cp
  • copy
  • cp
Example 1: Copy file to other folder
cp:
# copy file.txt
from: /tmp/source/file.txt
# to "target" folder
# note: slash in the end is required if you want to specify a target folder
to: /tmp/target/
Example 2: Copy file to other folder with different name
cp:
# copy file.txt
from: /tmp/source/file.txt
# to "target" folder and name it "renamed.txt"
to: /tmp/target/renamed.txt
Example 3: Copy folder contents to other folder
cp:
# copy everything from "source" folder
# note: slash in the end is required if you want to copy folder contents rather then the folder itself
from: /tmp/source/
# to "target"
to: /tmp/target

Action Handler: Find Files

Find files by mask.
ID: com.fireblink.fbl.fs.find
Aliases:
  • fbl.fs.find
  • fs.find
  • find
Example:
find:
# [required] list of masks to find files
include:
- /tmp/**/*.txt
# [optional] list of masks to exclude
exclude:
- /tmp/**/*.tmp.txt
# [required] result storage configuration
result:
# [optional] if provided all paths will be relative to give base directory
baseDir: /tmp
# [optional]
# Note: either `assignTo` or `pushTo` is requred
assignTo: # follows common assign logic practicies https://fbl.fireblink.com/plugins/common#push-to
# [optional]
# Note: either `assignTo` or `pushTo` is requred
pushTo: # follows common push logic practicies https://fbl.fireblink.com/plugins/common#push-to