Please refer to the module command to lock all module versions
hello: 25456bbcd17db524d1148e42bdcc3bb36ce90042
hello-dummy1: e8e9dc5dc913e211fdaa3bf1bd8a6618e602e8ff
hello-dummy2: e8e9dc5dc913e211fdaa3bf1bd8a6618e602e8ff
version: 1.0.0
Verbose: v
MaxCallLayers: 8
RefDir: .
TaskFile: up.yml
ConfigDir: .
ConfigFile: upconfig.yml
ModuleLock: true
Modules:
- repo: https://github.com/upcmd/hello-module.git
alias: hello
#v2 is a branch
version: v2
pullpolicy: skip
- repo: https://github.com/upcmd/hello-module.git
alias: hello-dummy1
version: master
pullpolicy: always
- repo: https://github.com/upcmd/hello-module.git
alias: hello-dummy2
# version: e8e9dc5
version: 25456bbcd17db524d1148e42bdcc3bb36ce90042
pullpolicy: always
notes: |
rules:
#clone the repo, repo name will be the module name
#version==empty, then it will use master
#dir==empty, it will use cloned git repo root dir
#dir==empty, then mod.dir will be auto mapped to repo name
- repo: https://github.com/up/sayhi.git
_dir: sayhi
_alias: sayhi
_version: master
_iid: noname
#skip: if repo exist already, then skip it and do not pull, this is the default if it is not configured
#manual: if repo exist already, then stop processing and fails straight away
#always: if repo exist already, then delete it and repull from remote again
- repo: https://github.com/up/sayhi.git
pullpolicy: manual | always | skip
#if both repo and dir exist, then the repo will be cloned to be named to dir name
- repo: https://github.com/up/sayhi.git
dir: himodule
_alias: himodule
_version: master
_iid: noname
#this is to use sub directory ./sayhi/a/b as the module location instead of root repo dir
- repo: https://github.com/up/sayhi.git
subdir: a/b
_dir: sayhi
:>alias: require setup to make it clear what the module name is
_version: master
_iid: noname
#use version value as tag name to check it out
- repo: https://github.com/up/sayhi.git
version: 1.0.0
_dir: sayhi
_alias: sayhi
_iid: noname
#the alias will be a translated name to be uesd in caller's code base
#eg, call: hi.SayHiTask, without alias, you will have to use sayhi.SayHiTask
#this is to just to avoid duplicated repo name, eg: https://github.com/somethingeles/sayhi.git
- repo: https://github.com/up/sayhi.git
alias: hi
_version: master
_dir: sayhi
_iid: noname
#sha value is a specific value to checkout if it presents as version
- repo: https://github.com/up/sayhello.git
version: abc123e
_alias: sayhello
_dir: sayhello
_iid: noname
- #if there is no repo, then it will use the dir as module and incorporate as module
#if
dir: c/d
:>alias: require setup to make it clear what the module name is
_iid: noname
- #if there is no repo, then it will use the dir as module and incorporate as module
dir: c/d
alias: hi
_iid: noname
#you can use absolute path for dir to be the location of a module
- dir: /etc/c/d
:>alias: require setup to make it clear what the module name is
_iid: noname
#iid is the instance id, which could be used in module, if it is empty then use default nonamed
- dir: /etc/c/d
:>alias: require setup to make it clear what the module name is
iid: dev
loading [Config]: ./tests/modtests/0008/upconfig.yml
Main config:
Version -> 1.0.0
RefDir -> ./tests/modtests/0008
WorkDir -> refdir
AbsWorkDir -> /up_project/up/tests/modtests/0008
TaskFile -> up.yml
Verbose -> v
ModuleName -> self
ShellType -> /bin/sh
MaxCallLayers -> 8
Timeout -> 3600000
MaxModuelCallLayers -> 256
EntryTask -> Main
ModRepoUsernameRef ->
ModRepoPasswordRef ->
work dir: /up_project/up/tests/modtests/0008
-exec task: Main
loading [Task]: ./up.yml
module: [self], instance id: [dev], exec profile: []
Task1: [Main ==> Main: main entry ]
-Step1: [
note that the module dir is: hello-module, but in upconfig.yml you give the alias hello as module name
]
WARN: [Locked version differs, use locked version] - [locked: 25456bbcd17db524d1148e42bdcc3bb36ce90042, configured: v2]
WARN: [config file does not exist] - [use builtin defaults]
loading [Task]: ./up.yml
module: [hello], instance id: [nonamed], exec profile: []
WARN: [*be aware*] - [both instance id and exec profile are not set]
=>call module: [hello] task: [Say_world]
Task2: [TODO: Main Caller Taskname ==> Say_world: ]
-Step1:
~SubStep1: [print: ]
.... world from Say_world