-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtemplate.bat
122 lines (96 loc) · 3.26 KB
/
template.bat
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
:entry_point
@rem Required by batchlib
@goto main
rem ############################################################################
rem Documentation
rem ############################################################################
:doc.help
rem Optional
rem A good documentation to help users how to use this script
echo usage:
echo %~nx0 [-h^|--help]
echo=
echo -h^|--help
echo Show this help message
exit /b 0
rem ############################################################################
rem Metadata
rem ############################################################################
:metadata [return_prefix]
rem Required by updater
set "%~1name=template"
set "%~1version=0"
set "%~1authors="
set "%~1license="
set "%~1description=New Script Template"
set "%~1release_date=08/22/2021" :: mm/dd/YYYY
set "%~1url="
set "%~1download_url="
exit /b 0
rem ############################################################################
rem Configurations
rem ############################################################################
:config
rem Optional
call :config.default
call :config.preference
exit /b 0
:config.default
rem Default/common configurations
:: set "tmp_dir=!tmp!\!SOFTWARE.name!"
exit /b 0
:config.preference
rem Configurations to change/override
exit /b 0
rem ############################################################################
rem Main
rem ############################################################################
:main
@setlocal EnableDelayedExpansion EnableExtensions
@echo off
if ^"%1^" == "-h" goto doc.help
if ^"%1^" == "--help" goto doc.help
call :metadata SOFTWARE.
call :config
call :main_script
set "exit_code=!errorlevel!"
@exit /b !exit_code!
:main_script
rem TODO: start scripting...
@exit /b
rem ############################################################################
rem Library
rem ############################################################################
:lib.dependencies [return_prefix]
rem Required for batchlib
rem List libraries you use in this file here:
set "%~1install_requires="
rem Add dependencies to this file by running:
:: cmd /c batchlib.bat build Script-Name-Here.bat
exit /b 0
rem ############################################################################
rem Tests
rem ############################################################################
:tests.setup
rem Required by unittest/quicktest
rem Called before running any tests here
rem A fail/error/skip here will abort unittest for this file
exit /b 0
:tests.teardown
rem Called after unittest for this file is done. Useful for cleanups.
exit /b 0
:tests.test_something
rem Do some tests here...
rem And if something goes wrong:
:: call %unittest% fail "Something failed"
:: call %unittest% error "The unexpected happened"
:: call %unittest% skip "No internet detected..."
exit /b 0
rem ############################################################################
rem End of File
rem ############################################################################
:EOF
@rem Required by batchlib
@rem DO NOT WRITE ANYTHING YOU NEED TO KEEP BELOW THIS FUNCTION.
@rem ANYTHING BEYOND THIS FUNCTION WILL BE REMOVED WHEN ADDING DEPENDENCIES.
@exit /b