mirror of
https://github.com/sasjs/core.git
synced 2025-12-29 21:50:05 +00:00
Compare commits
11 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c8d3b43b12 | ||
|
|
32a6d15c2e | ||
|
|
b109e7cead | ||
| d291d3e287 | |||
|
|
5a2968e798 | ||
|
|
120ad9a7da | ||
|
|
67a81b2690 | ||
|
|
506cf1812f | ||
|
|
8cc0eb0dd7 | ||
|
|
3f49925d01 | ||
|
|
c51c9c2ca9 |
30
.github/vpn/config.ovpn
vendored
Normal file
30
.github/vpn/config.ovpn
vendored
Normal file
@@ -0,0 +1,30 @@
|
||||
cipher AES-256-CBC
|
||||
setenv FORWARD_COMPATIBLE 1
|
||||
client
|
||||
server-poll-timeout 4
|
||||
nobind
|
||||
remote vpn.analytium.co.uk 1194 udp
|
||||
remote vpn.analytium.co.uk 1194 udp
|
||||
remote vpn.analytium.co.uk 443 tcp
|
||||
remote vpn.analytium.co.uk 1194 udp
|
||||
remote vpn.analytium.co.uk 1194 udp
|
||||
remote vpn.analytium.co.uk 1194 udp
|
||||
remote vpn.analytium.co.uk 1194 udp
|
||||
remote vpn.analytium.co.uk 1194 udp
|
||||
dev tun
|
||||
dev-type tun
|
||||
ns-cert-type server
|
||||
setenv opt tls-version-min 1.0 or-highest
|
||||
reneg-sec 604800
|
||||
sndbuf 0
|
||||
rcvbuf 0
|
||||
# NOTE: LZO commands are pushed by the Access Server at connect time.
|
||||
# NOTE: The below line doesn't disable LZO.
|
||||
comp-lzo no
|
||||
verb 3
|
||||
setenv PUSH_PEER_INFO
|
||||
|
||||
ca ca.crt
|
||||
cert user.crt
|
||||
key user.key
|
||||
tls-auth tls.key 1
|
||||
33
.github/workflows/run-tests.yml
vendored
33
.github/workflows/run-tests.yml
vendored
@@ -21,6 +21,31 @@ jobs:
|
||||
with:
|
||||
node-version: ${{ matrix.node-version }}
|
||||
|
||||
- name: Write VPN Files
|
||||
run: |
|
||||
echo "$CA_CRT" > .github/vpn/ca.crt
|
||||
echo "$USER_CRT" > .github/vpn/user.crt
|
||||
echo "$USER_KEY" > .github/vpn/user.key
|
||||
echo "$TLS_KEY" > .github/vpn/tls.key
|
||||
shell: bash
|
||||
env:
|
||||
CA_CRT: ${{ secrets.CA_CRT}}
|
||||
USER_CRT: ${{ secrets.USER_CRT }}
|
||||
USER_KEY: ${{ secrets.USER_KEY }}
|
||||
TLS_KEY: ${{ secrets.TLS_KEY }}
|
||||
|
||||
- name: Install Open VPN
|
||||
run: |
|
||||
sudo apt install apt-transport-https
|
||||
sudo wget https://swupdate.openvpn.net/repos/openvpn-repo-pkg-key.pub
|
||||
sudo apt-key add openvpn-repo-pkg-key.pub
|
||||
sudo wget -O /etc/apt/sources.list.d/openvpn3.list https://swupdate.openvpn.net/community/openvpn3/repos/openvpn3-bionic.list
|
||||
sudo apt update
|
||||
sudo apt install openvpn3
|
||||
|
||||
- name: Start Open VPN 3
|
||||
run: openvpn3 session-start --config .github/vpn/config.ovpn
|
||||
|
||||
- name: Install Doxygen
|
||||
run: sudo apt-get install doxygen
|
||||
|
||||
@@ -31,16 +56,16 @@ jobs:
|
||||
run: npm run lint
|
||||
|
||||
- name: Add client
|
||||
run: echo "CLIENT=${{secrets.CLIENT}}"> .env.viya
|
||||
run: echo "CLIENT=${{secrets.CLIENT}}"> .env.viya
|
||||
|
||||
- name: Add secret
|
||||
run: echo "SECRET=${{secrets.SECRET}}" >> .env.viya
|
||||
run: echo "SECRET=${{secrets.SECRET}}" >> .env.viya
|
||||
|
||||
- name: Add access token
|
||||
run: echo "ACCESS_TOKEN=${{secrets.ACCESS_TOKEN}}" >> .env.viya
|
||||
run: echo "ACCESS_TOKEN=${{secrets.ACCESS_TOKEN}}" >> .env.viya
|
||||
|
||||
- name: Add refresh token
|
||||
run: echo "REFRESH_TOKEN=${{secrets.REFRESH_TOKEN}}" >> .env.viya
|
||||
run: echo "REFRESH_TOKEN=${{secrets.REFRESH_TOKEN}}" >> .env.viya
|
||||
|
||||
- name: Build Project
|
||||
run: npm run build
|
||||
|
||||
55
all.sas
55
all.sas
@@ -9041,7 +9041,7 @@ data _null_;
|
||||
put '%local i tempds jsonengine; ';
|
||||
put ' ';
|
||||
put '/* see https://github.com/sasjs/core/issues/41 */ ';
|
||||
put '%if %upcase(&SYSENCODING)=WLATIN1 %then %let jsonengine=PROCJSON; ';
|
||||
put '%if "%upcase(&SYSENCODING)" ne "UTF-8" %then %let jsonengine=PROCJSON; ';
|
||||
put '%else %let jsonengine=DATASTEP; ';
|
||||
put ' ';
|
||||
put ' ';
|
||||
@@ -11769,7 +11769,8 @@ filename __shake clear;
|
||||
put '%let mmxpass="Mars321";';
|
||||
run;
|
||||
|
||||
filename myref "%sysfunc(pathname(work))/mmxexport.sh";
|
||||
filename myref "%sysfunc(pathname(work))/mmxexport.sh"
|
||||
permission='A::u::rwx,A::g::r-x,A::o::---';
|
||||
%mm_spkexport(metaloc=%str(/my/meta/loc)
|
||||
,outref=myref
|
||||
,secureref=tmp
|
||||
@@ -11778,7 +11779,8 @@ filename __shake clear;
|
||||
|
||||
Alternatively, call without inputs to create a function style output
|
||||
|
||||
filename myref "/tmp/mmscript.sh";
|
||||
filename myref "/tmp/mmscript.sh"
|
||||
permission='A::u::rwx,A::g::r-x,A::o::---';
|
||||
%mm_spkexport(metaloc=%str(/my/meta/loc)
|
||||
outref=myref
|
||||
,cmdoutloc=%str(/tmp)
|
||||
@@ -11864,7 +11866,7 @@ run;
|
||||
,msg=%str(syscc=&syscc)
|
||||
)
|
||||
|
||||
%mend;/**
|
||||
%mend mm_spkexport;/**
|
||||
@file mm_tree.sas
|
||||
@brief Returns all folders / subfolder content for a particular root
|
||||
@details Shows all members and SubTrees for a particular root.
|
||||
@@ -12532,7 +12534,7 @@ run;
|
||||
%local i tempds jsonengine;
|
||||
|
||||
/* see https://github.com/sasjs/core/issues/41 */
|
||||
%if %upcase(&SYSENCODING)=WLATIN1 %then %let jsonengine=PROCJSON;
|
||||
%if "%upcase(&SYSENCODING)" ne "UTF-8" %then %let jsonengine=PROCJSON;
|
||||
%else %let jsonengine=DATASTEP;
|
||||
|
||||
|
||||
@@ -12987,7 +12989,8 @@ run;
|
||||
filename &fref filesrvc
|
||||
folderPath="&path"
|
||||
filename="&name"
|
||||
cdisp="&contentdisp";
|
||||
cdisp="&contentdisp"
|
||||
lrecl=1048544;
|
||||
|
||||
%mp_binarycopy(inref=&inref, outref=&fref)
|
||||
|
||||
@@ -13423,6 +13426,30 @@ run;
|
||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||
end;
|
||||
else if rec='01'x then do; /* Unprintable */
|
||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'u');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'0');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'0');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'0');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'1');rc =fwrite(fileid);
|
||||
end;
|
||||
else if rec='07'x then do; /* Bell Char */
|
||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'u');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'0');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'0');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'0');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'7');rc =fwrite(fileid);
|
||||
end;
|
||||
else if rec='1B'x then do; /* escape char */
|
||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'u');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'0');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'0');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'1');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'B');rc =fwrite(fileid);
|
||||
end;
|
||||
else do;
|
||||
rc =fput(fileid,rec);
|
||||
rc =fwrite(fileid);
|
||||
@@ -14168,6 +14195,22 @@ run;
|
||||
rc =fput(fileid,'0');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'1');rc =fwrite(fileid);
|
||||
end;
|
||||
else if rec='07'x then do; /* Bell Char */
|
||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'u');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'0');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'0');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'0');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'7');rc =fwrite(fileid);
|
||||
end;
|
||||
else if rec='1B'x then do; /* escape char */
|
||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'u');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'0');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'0');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'1');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'B');rc =fwrite(fileid);
|
||||
end;
|
||||
else do;
|
||||
rc =fput(fileid,rec);
|
||||
rc =fwrite(fileid);
|
||||
|
||||
@@ -269,7 +269,7 @@ data _null_;
|
||||
put '%local i tempds jsonengine; ';
|
||||
put ' ';
|
||||
put '/* see https://github.com/sasjs/core/issues/41 */ ';
|
||||
put '%if %upcase(&SYSENCODING)=WLATIN1 %then %let jsonengine=PROCJSON; ';
|
||||
put '%if "%upcase(&SYSENCODING)" ne "UTF-8" %then %let jsonengine=PROCJSON; ';
|
||||
put '%else %let jsonengine=DATASTEP; ';
|
||||
put ' ';
|
||||
put ' ';
|
||||
|
||||
@@ -24,7 +24,8 @@
|
||||
put '%let mmxpass="Mars321";';
|
||||
run;
|
||||
|
||||
filename myref "%sysfunc(pathname(work))/mmxexport.sh";
|
||||
filename myref "%sysfunc(pathname(work))/mmxexport.sh"
|
||||
permission='A::u::rwx,A::g::r-x,A::o::---';
|
||||
%mm_spkexport(metaloc=%str(/my/meta/loc)
|
||||
,outref=myref
|
||||
,secureref=tmp
|
||||
@@ -33,7 +34,8 @@
|
||||
|
||||
Alternatively, call without inputs to create a function style output
|
||||
|
||||
filename myref "/tmp/mmscript.sh";
|
||||
filename myref "/tmp/mmscript.sh"
|
||||
permission='A::u::rwx,A::g::r-x,A::o::---';
|
||||
%mm_spkexport(metaloc=%str(/my/meta/loc)
|
||||
outref=myref
|
||||
,cmdoutloc=%str(/tmp)
|
||||
@@ -119,4 +121,4 @@ run;
|
||||
,msg=%str(syscc=&syscc)
|
||||
)
|
||||
|
||||
%mend;
|
||||
%mend mm_spkexport;
|
||||
@@ -39,7 +39,7 @@
|
||||
%local i tempds jsonengine;
|
||||
|
||||
/* see https://github.com/sasjs/core/issues/41 */
|
||||
%if %upcase(&SYSENCODING)=WLATIN1 %then %let jsonengine=PROCJSON;
|
||||
%if "%upcase(&SYSENCODING)" ne "UTF-8" %then %let jsonengine=PROCJSON;
|
||||
%else %let jsonengine=DATASTEP;
|
||||
|
||||
|
||||
|
||||
2417
package-lock.json
generated
2417
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -33,7 +33,6 @@
|
||||
"postinstall": "[ -d .git ] && git config core.hooksPath ./.git-hooks || true"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@sasjs/cli": "^2.22.2"
|
||||
},
|
||||
"dependencies": {}
|
||||
"@sasjs/cli": "^2.27.0"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -30,13 +30,16 @@
|
||||
"name": "viya",
|
||||
"serverUrl": "https://sas.analytium.co.uk",
|
||||
"serverType": "SASVIYA",
|
||||
"allowInsecureRequests": false,
|
||||
"appLoc": "/Public/temp/macrocore",
|
||||
"deployConfig": {
|
||||
"deployServicePack": true
|
||||
},
|
||||
"macroFolders": [
|
||||
"tests/viya"
|
||||
],
|
||||
"programFolders": [],
|
||||
"deployConfig": {
|
||||
"deployServicePack": true,
|
||||
"deployScripts": []
|
||||
},
|
||||
"contextName": "SAS Job Execution compute context"
|
||||
},
|
||||
{
|
||||
|
||||
@@ -96,7 +96,8 @@
|
||||
filename &fref filesrvc
|
||||
folderPath="&path"
|
||||
filename="&name"
|
||||
cdisp="&contentdisp";
|
||||
cdisp="&contentdisp"
|
||||
lrecl=1048544;
|
||||
|
||||
%mp_binarycopy(inref=&inref, outref=&fref)
|
||||
|
||||
|
||||
@@ -237,6 +237,30 @@ run;
|
||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||
end;
|
||||
else if rec='01'x then do; /* Unprintable */
|
||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'u');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'0');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'0');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'0');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'1');rc =fwrite(fileid);
|
||||
end;
|
||||
else if rec='07'x then do; /* Bell Char */
|
||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'u');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'0');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'0');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'0');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'7');rc =fwrite(fileid);
|
||||
end;
|
||||
else if rec='1B'x then do; /* escape char */
|
||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'u');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'0');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'0');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'1');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'B');rc =fwrite(fileid);
|
||||
end;
|
||||
else do;
|
||||
rc =fput(fileid,rec);
|
||||
rc =fwrite(fileid);
|
||||
|
||||
@@ -675,6 +675,22 @@ run;
|
||||
rc =fput(fileid,'0');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'1');rc =fwrite(fileid);
|
||||
end;
|
||||
else if rec='07'x then do; /* Bell Char */
|
||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'u');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'0');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'0');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'0');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'7');rc =fwrite(fileid);
|
||||
end;
|
||||
else if rec='1B'x then do; /* escape char */
|
||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'u');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'0');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'0');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'1');rc =fwrite(fileid);
|
||||
rc =fput(fileid,'B');rc =fwrite(fileid);
|
||||
end;
|
||||
else do;
|
||||
rc =fput(fileid,rec);
|
||||
rc =fwrite(fileid);
|
||||
|
||||
Reference in New Issue
Block a user