Skip to content
You're viewing an older version of this GitHub Action. Do you want to see the latest version instead?
user-check

GitHub Action

anyone-validate-fs

1.0.4

anyone-validate-fs

user-check

anyone-validate-fs

Validate repository file structure as we expected

Installation

Copy and paste the following snippet into your .yml file.

              

- name: anyone-validate-fs

uses: anyone-developer/anyone-validate-fs@1.0.4

Learn more about this action in anyone-developer/anyone-validate-fs

Choose a version

anyone-validate-fs

nightly-build release-build release-test FOSSA Status DependaBot version license Build Status XO code style Total alerts Language grade: JavaScript DeepScan grade Gitpod Ready-to-Code

This GitHub action helps you to validate the file structure as you expected. The validate rule will follow the brace-expansion. For a more official definition, please refer to https://www.gnu.org/software/bash/manual/bash.html#Brace-Expansion

If you like my module, please buy me a coffee.

More and more tiny and useful GitHub action modules are on the way. Please donate to me. I accept a part-time job contract. if you need, please contact me: zhang_nan_163@163.com

Inputs

brace-expansion

Required brace-expansion of the expected directory structure.

ignore-files

the files you want to ignore. split with a comma.

ignore-directories

the directories you want to ignore. split with a comma.

read-path

the path that you assign to read.

render-layout

render diff result with 'vertical' or 'horizontal'

Outputs

output

the output of execution.

Other way usages

From NPM for programmatic use

  • create a 'demo' folder
  • npm init to create your nodejs package
  • copy 'sample_folder' to demo
  • npm install anyone-validate-fs to install module
  • create 'index.js' and copy code below:
const {avfs} = require('anyone-validate-fs');

avfs.setRenderLayout('horizontal').diff(
  './sample_folder',
  '{x/p,y/f,{a,b/{ba1,ba2,bb1,bb2},c,d}/{a.qa.config,b.prd.config}}',
  'README.md',
  '.git'
).then(resolve => {
  console.info(resolve.diff);
  return resolve.diff;
}, error => {
  if (error.name && error.message) {
    console.error(`error message: ${error.message}`);
  }

  return error.message;
});

here is repl.it online editor: https://repl.it/@EdwardRoshan/anyone-validate-fs-demo

  • node index.js to run it

From NPM for using as a command-line app

  • npm install -g anyone-validate-fs to install gobally
  • anyone-validate-fs -r './sample_folder' -b '{a,b/{ba1,ba2,bb1,bb2},c,d}/{a.qa.config,b.prd.config}' -I ".git" -i "README.md" to use your bash to execute it.
  • you would get same result with above screenshot

Example usage

uses: anyone-developer/anyone-validate-fs@main
with:
  brace-expansion: '{a,b/{ba1,ba2,bb1,bb2},c,d}/{a.qa.config,b.prd.config}'
  ignore-files: 'README.md'
  ignore-directories: '.git'
  read-path: 'sample_folder'
  render-layout: 'horizontal'

Fossa Report

FOSSA Status

Donation

PalPal: https://paypal.me/nzhang4