-
Notifications
You must be signed in to change notification settings - Fork 19
/
release
executable file
·139 lines (121 loc) · 5.15 KB
/
release
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
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
#!/bin/bash
set -e
unset PREFIX npm_config_prefix
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
function gitCheckoutMainOf {
if [ ! -d workspaces/$1 ]; then
echo "Creating workspace $1"
npm run add $1
fi
if [ ! -d workspaces/$1 ]; then
echo "Workspace not found! $1" 1>&2
exit 64
fi
echo Checkout $1
cd workspaces/$1
sed -i -e 's/https...gh.neting.cc./git@github.com:/g' .git/config
git checkout main
git reset origin/main
git checkout -- .
git pull
}
function npmInstallUpdateOf {
echo update dependencies $1
nvm use --delete-prefix
rm -rf node_modules
rm package-lock.json
npx npm-check-updates -u --target minor # patch, minor, major
# npm install --save-dev eslint@7 # eslint@8 do not works with node.j < 16
}
function testBuildPushTagOn {
echo install $1
npm install
echo Test, Build and Create tag of $1
npm test
npm run build
( git commit -am"Update dependencies" && npm version patch && npm publish -timeout=9999999 ) || echo No change in $1
git push origin main --follow-tags
cd ../..
echo Finished $1
}
function updateRepo {
echo Starting $1
gitCheckoutMainOf $1
npmInstallUpdateOf $1
testBuildPushTagOn $1
}
# This is a here-document
<< REMOVED
Any code in between is not executed.
REMOVED
updateRepo solid-namespace # solid-namespace
gitCheckoutMainOf rdflib # rdflib (jsonld, n3, xmldom)
npmInstallUpdateOf rdflib
npm install --save-dev node-fetch@2 # node-fetch@3 needs import
testBuildPushTagOn rdflib
updateRepo solid-logic # solid-logic (rdflib, solid-namespace)
updateRepo pane-registry # pane-registry (solid-logic, rdflib)
gitCheckoutMainOf solid-ui # solid-ui (pane-registry, solid-logic, rdflib, solid-namespace)
npm install pane-registry solid-logic rdflib solid-namespace # temporary until storybook updated to react 18
# npmInstallUpdateOf solid-ui
# npm install --save-dev @testing-library/user-event@13
# npm install --save react@17 react-dom@17 react-is@17 # for storybook@6.4.19
testBuildPushTagOn solid-ui
gitCheckoutMainOf activitystreams-pane # activity-streams (solid-ui, pane-registry, solid-logic, rdflib)
npm install solid-ui pane-registry solid-logic rdflib # temporary until storybook updated to react 18
# npmInstallUpdateOf activitystreams-pane
# npm install --save react@17 react-dom@17 # for storybook@6.4.19
testBuildPushTagOn activitystreams-pane
updateRepo chat-pane # chat-pane (solid-ui, solid-logic, rdflib)
updateRepo folder-pane # folder-pane (solid-ui, solid-logic)
updateRepo issue-pane # issue-pane (solid-ui, pane-registry, rdflib)
updateRepo meeting-pane # meeting-pane (solid-ui, solid-logic, rdflib)
updateRepo contacts-pane # contacts-pane (solid-ui, pane-registry, solid-logic, rdflib)
updateRepo profile-pane # profile-pane (contacts-pane, solid-ui, pane-registry, solid-logic, rdflib)
updateRepo source-pane # source-pane (solid-ui)
updateRepo folder-pane # folder-pane (solid-ui, solid-logic)
updateRepo solid-panes # solid-panes (chat-pane, contacts-pane, folder-pane, issue-pane, meeting-pane, pane-registry, rdflib, solid-ui, source-pane)
updateRepo mashlib # mashlib (rdflib, solid-panes, solid-ui)
<< REMOVED
updateRepo jose # @solid/jose
updateRepo oidc-rp # @solid/oidc-rp (@solid/jose)
gitCheckoutMainOf solid-auth-client # solid-auth-client (@babel/runtime, auth-header, commander, isomorphic-fetch, @solid/oidc-rp)
# npmInstallUpdateOf solid-auth-client
npm install @solid/oidc-rp@latest
testBuildPushTagOn solid-auth-client
updateRepo node-solid-ws # solid-ws ()
updateRepo node-webid # webid (rdflib)
updateRepo acl-check # @solid/acl-check (rdflib, solid-namespace)
updateRepo keychain # @solid/keychain
updateRepo oidc-op # @solid/oidc-op (@solid/keychain)
updateRepo oidc-rs # @solid/oidc-rs (@solid/jose)
updateRepo solid-multi-rp-client # @solid/solid-multi-rp-client (oidc-rp)
updateRepo oidc-auth-manager # @solid/oidc-auth-manager (oidc-rp, oidc-op, oidc-rs, solid-multi-rp-client)
updateRepo solid-auth-oidc # @solid/solid-auth-oidc (@solid/oidc-rp)
gitCheckoutMainOf node-solid-server # solid-server (@solid/acl-check, @solid/oidc-auth-manager, rdflib, mashlib, solid-auth-client, solid-namespace, solid-ws, @solid/oidc-op, @solid/solid-auth-oidc, webid)
npmInstallUpdateOf node-solid-server
npm install bootstrap@3
npm install get-folder-size@2 # require needed
npm install into-stream@6 # require needed
npm install --save-dev @solid/solid-auth-oidc@0.3.0
testBuildPushTagOn node-solid-server
gitCheckoutMainOf solid-rest # solid-rest (concat-stream, cross-fetch, fs-extra, mime-types)
nvm use --delete-prefix
rm -rf node_modules
rm package-lock.json
npx npm-check-updates -u
npm install --save-dev webpack@4
testBuildPushTagOn solid-rest
updateRepo solid-cli # solid-cli (@solid/oidc-rp)
# FIXME: https://github.com/solid/solid-auth-fetcher/issues/15
# updateRepo solid-auth-fetcher
updateRepo solid-node-client # solid-node-client (rdflib, solid-auth-fetcher, solid-rest)
updateRepo webid-provider-tests
updateRepo solid-crud-tests
updateRepo web-access-control-tests
# FIXME: https://github.com/solid/github-solid/pull/2
# updateRepo gitter-solid
# FIXME: https://github.com/solid/gitter-solid/pull/12
# updateRepo github-solid
REMOVED