-
Notifications
You must be signed in to change notification settings - Fork 8
262 lines (242 loc) · 14.9 KB
/
devPortal-update.yml
File metadata and controls
262 lines (242 loc) · 14.9 KB
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
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
name: Update Devportal Documentation (Flyover LPS)
on:
push:
branches: [master]
paths:
- '*.md'
- 'docs/**/*.md'
permissions: read-all
jobs:
update-docs:
runs-on: ubuntu-latest
steps:
- name: Checkout Code
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
# Step 1: Generate GitHub App Token
- name: Generate GitHub App Token
id: generate_token
uses: actions/create-github-app-token@31c86eb3b33c9b601a1f60f98dcbfd1d70f379b4 # v1.10.3
with:
app-id: ${{ secrets.GH_APP_ID }}
private-key: ${{ secrets.GH_APP_PRIVATE_KEY }}
owner: rsksmart
repositories: devportal
# Step 2: Clone the Devportal Repository
- name: Clone Devportal Repository
run: |
TIMESTAMP=$(date +'%Y%m%d-%H%M%S')
BRANCH_NAME="update-from-lps-${TIMESTAMP}"
echo "BRANCH_NAME=${BRANCH_NAME}" >> $GITHUB_ENV
git clone https://x-access-token:${{ steps.generate_token.outputs.token }}@github.com/rsksmart/devportal.git
cd devportal
git checkout -b ${BRANCH_NAME} || git checkout ${BRANCH_NAME}
cd ..
# Step 3: Transform Each File and Copy to Devportal Repository
- name: Transform Files for Devportal
run: |
set -e
mkdir -p transformed
BASE_SRC="."
BASE_DST="devportal/docs/02-developers/06-integrate/02-flyover"
#####################################
# Overview #
#####################################
TEMP_FILE="temp_index.md"
tail -n +2 ${BASE_SRC}/docs/Overview.md > ${TEMP_FILE}
TRANSFORMED_FILE="transformed/index.md"
echo "---" > ${TRANSFORMED_FILE}
echo "sidebar_label: RBTC Flyover" >> ${TRANSFORMED_FILE}
echo "sidebar_position: 100" >> ${TRANSFORMED_FILE}
echo "title: RBTC Flyover - Overview" >> ${TRANSFORMED_FILE}
echo "tags: [rsk, rootstock, rif, flyover, integrate, integration guide, rbtc, powpeg]" >> ${TRANSFORMED_FILE}
echo "description: The RBTC Flyover enables fast, trust-minimized onboarding of users into the Rootstock ecosystem from Bitcoin with less friction. It improves the usability for bitcoiners and integrators to interact with the Rootstock ecosystem via the Powpeg and Flyover SDK." >> ${TRANSFORMED_FILE}
echo "---" >> ${TRANSFORMED_FILE}
echo "" >> ${TRANSFORMED_FILE}
cat ${TEMP_FILE} >> ${TRANSFORMED_FILE}
rm ${TEMP_FILE}
cp ${TRANSFORMED_FILE} ${BASE_DST}/index.md
#####################################
# Get Started (README) #
#####################################
TEMP_FILE="temp_get-started.md"
tail -n +1 ${BASE_SRC}/README.md | grep -Ev "OpenSSF Scorecard|CodeQL|Unit Tests" > ${TEMP_FILE}
TRANSFORMED_FILE="transformed/get-started.md"
echo "---" > ${TRANSFORMED_FILE}
echo "sidebar_label: Getting Started" >> ${TRANSFORMED_FILE}
echo "sidebar_position: 210" >> ${TRANSFORMED_FILE}
echo "title: Getting Started as a Liquidity Provider" >> ${TRANSFORMED_FILE}
echo "tags: [rsk, rootstock, rif, flyover, integrate, integration guide, rbtc, powpeg]" >> ${TRANSFORMED_FILE}
echo "description: The Flyover SDK streamlines integration between client applications and the Flyover Protocol. This easy-to-use JavaScript/TypeScript toolkit provides configuration options for Liquidity Providers (LPs) and custom network setups for connecting to Rootstock." >> ${TRANSFORMED_FILE}
echo "---" >> ${TRANSFORMED_FILE}
echo "" >> ${TRANSFORMED_FILE}
echo ":::info[Note]" >> ${TRANSFORMED_FILE}
echo "If you wish to suggest changes on this document, please open a PR on the [Liquidity Provider Server Repository](https://github.com/rsksmart/liquidity-provider-server.git)" >> ${TRANSFORMED_FILE}
echo ":::" >> ${TRANSFORMED_FILE}
echo "" >> ${TRANSFORMED_FILE}
cat ${TEMP_FILE} >> ${TRANSFORMED_FILE}
rm ${TEMP_FILE}
mkdir -p ${BASE_DST}/LP
cp ${TRANSFORMED_FILE} ${BASE_DST}/LP/get-started.md
#####################################
# Security #
#####################################
TEMP_FILE="temp_security.md"
tail -n +1 ${BASE_SRC}/SECURITY.md > ${TEMP_FILE}
TRANSFORMED_FILE="transformed/security.md"
echo "---" > ${TRANSFORMED_FILE}
echo "sidebar_label: Security Process" >> ${TRANSFORMED_FILE}
echo "sidebar_position: 230" >> ${TRANSFORMED_FILE}
echo "title: Liquidity Provider Server Security Process" >> ${TRANSFORMED_FILE}
echo "tags: [rsk, rootstock, rif, flyover, integrate, integration guide, rbtc, powpeg, security]" >> ${TRANSFORMED_FILE}
echo "description: Learn about the security process for the Liquidity Provider Server in the Flyover protocol, including vulnerability reporting, disclosure policies, and public keys." >> ${TRANSFORMED_FILE}
echo "---" >> ${TRANSFORMED_FILE}
echo "" >> ${TRANSFORMED_FILE}
cat ${TEMP_FILE} >> ${TRANSFORMED_FILE}
rm ${TEMP_FILE}
cp ${TRANSFORMED_FILE} ${BASE_DST}/LP/security.md
#####################################
# Docker Setup #
#####################################
TEMP_FILE="temp_docker-setup.md"
tail -n +2 ${BASE_SRC}/docker-compose/README.md > ${TEMP_FILE}
TRANSFORMED_FILE="transformed/docker-setup.md"
echo "---" > ${TRANSFORMED_FILE}
echo "sidebar_label: Docker Setup" >> ${TRANSFORMED_FILE}
echo "sidebar_position: 230" >> ${TRANSFORMED_FILE}
echo "title: Docker Setup for Liquidity Provider Server" >> ${TRANSFORMED_FILE}
echo "tags: [rsk, rootstock, rif, flyover, integrate, integration guide, rbtc, powpeg, docker]" >> ${TRANSFORMED_FILE}
echo "description: Learn how to run a Liquidity Provider Server (LPS) using Docker Compose, including configuration for both regtest and testnet environments." >> ${TRANSFORMED_FILE}
echo "---" >> ${TRANSFORMED_FILE}
echo "" >> ${TRANSFORMED_FILE}
cat ${TEMP_FILE} >> ${TRANSFORMED_FILE}
rm ${TEMP_FILE}
cp ${TRANSFORMED_FILE} ${BASE_DST}/LP/docker-setup.md
#####################################
# Protocol Design #
#####################################
TEMP_FILE="temp_design.md"
tail -n +2 ${BASE_SRC}/docs/DESIGN.md > ${TEMP_FILE}
TRANSFORMED_FILE="transformed/design.md"
echo "---" > ${TRANSFORMED_FILE}
echo "sidebar_label: Protocol Design" >> ${TRANSFORMED_FILE}
echo "sidebar_position: 220" >> ${TRANSFORMED_FILE}
echo "title: Flyover Protocol Design" >> ${TRANSFORMED_FILE}
echo "tags: [rsk, rootstock, rif, flyover, integrate, integration guide, rbtc, powpeg]" >> ${TRANSFORMED_FILE}
echo "description: The Flyover protocol allows fast Bitcoin to Rootstock transfers without giving custody of funds to third parties. Learn about the system design and workflow." >> ${TRANSFORMED_FILE}
echo "---" >> ${TRANSFORMED_FILE}
echo "" >> ${TRANSFORMED_FILE}
cat ${TEMP_FILE} >> ${TRANSFORMED_FILE}
rm ${TEMP_FILE}
cp ${TRANSFORMED_FILE} ${BASE_DST}/LP/design.md
#####################################
# Environment Variables #
#####################################
TEMP_FILE="temp_setting-variables.md"
tail -n +2 ${BASE_SRC}/docs/Environment.md > ${TEMP_FILE}
TRANSFORMED_FILE="transformed/setting-variables.md"
echo "---" > ${TRANSFORMED_FILE}
echo "sidebar_label: Environment Variables" >> ${TRANSFORMED_FILE}
echo "sidebar_position: 230" >> ${TRANSFORMED_FILE}
echo "title: Setting Environment Variables" >> ${TRANSFORMED_FILE}
echo "tags: [rsk, rootstock, rif, flyover, integrate, integration guide, rbtc, powpeg]" >> ${TRANSFORMED_FILE}
echo "description: This section lists every environment variable used by the Liquidity Provider Server (LPS), including examples, default values and whether each setting is mandatory." >> ${TRANSFORMED_FILE}
echo "---" >> ${TRANSFORMED_FILE}
echo "" >> ${TRANSFORMED_FILE}
cat ${TEMP_FILE} >> ${TRANSFORMED_FILE}
rm ${TEMP_FILE}
cp ${TRANSFORMED_FILE} ${BASE_DST}/LP/setting-variables.md
#####################################
# LP Management #
#####################################
TEMP_FILE="temp_management.md"
tail -n +2 ${BASE_SRC}/docs/LP-Management.md > ${TEMP_FILE}
TRANSFORMED_FILE="transformed/management.md"
echo "---" > ${TRANSFORMED_FILE}
echo "sidebar_label: LP Management" >> ${TRANSFORMED_FILE}
echo "sidebar_position: 220" >> ${TRANSFORMED_FILE}
echo "title: Liquidity Provider (LP) Management" >> ${TRANSFORMED_FILE}
echo "tags: [rsk, rootstock, rif, flyover, integrate, integration guide, rbtc, powpeg]" >> ${TRANSFORMED_FILE}
echo "description: Learn how Liquidity Providers can secure, configure and manage their server using the Management UI and API, covering collateral, configuration and wallet operations." >> ${TRANSFORMED_FILE}
echo "---" >> ${TRANSFORMED_FILE}
echo "" >> ${TRANSFORMED_FILE}
cat ${TEMP_FILE} >> ${TRANSFORMED_FILE}
rm ${TEMP_FILE}
cp ${TRANSFORMED_FILE} ${BASE_DST}/LP/management.md
#####################################
# Operating LP #
#####################################
TEMP_FILE="temp_lp-onboarding.md"
tail -n +2 ${BASE_SRC}/docs/Operating-LP.md > ${TEMP_FILE}
TRANSFORMED_FILE="transformed/lp-onboarding.md"
echo "---" > ${TRANSFORMED_FILE}
echo "sidebar_label: Liquidity Provider Onboarding" >> ${TRANSFORMED_FILE}
echo "sidebar_position: 200" >> ${TRANSFORMED_FILE}
echo "title: RBTC Flyover - LP Onboarding" >> ${TRANSFORMED_FILE}
echo "tags: [rsk, rootstock, rif, flyover, integrate, integration guide, rbtc, powpeg]" >> ${TRANSFORMED_FILE}
echo "description: Step-by-step operational guide outlining requirements, dependencies, fees, liquidity needs and best practices for running a Liquidity Provider Server." >> ${TRANSFORMED_FILE}
echo "---" >> ${TRANSFORMED_FILE}
echo "" >> ${TRANSFORMED_FILE}
cat ${TEMP_FILE} >> ${TRANSFORMED_FILE}
rm ${TEMP_FILE}
cp ${TRANSFORMED_FILE} ${BASE_DST}/LP/index.md
#####################################
# Advanced Operations #
#####################################
TEMP_FILE="temp_advanced-operations.md"
tail -n +2 ${BASE_SRC}/docs/Advanced-Operations.md > ${TEMP_FILE}
TRANSFORMED_FILE="transformed/advanced-operations.md"
echo "---" > ${TRANSFORMED_FILE}
echo "sidebar_label: Advanced Operations" >> ${TRANSFORMED_FILE}
echo "sidebar_position: 240" >> ${TRANSFORMED_FILE}
echo "title: Flyover SDK - Advanced Operations" >> ${TRANSFORMED_FILE}
echo "tags: [rsk, rootstock, rif, flyover, integrate, integration guide, rbtc, powpeg]" >> ${TRANSFORMED_FILE}
echo "description: Advanced topics covering custom network setups, captcha token handling and Flyover SDK utility helpers for sophisticated client integrations." >> ${TRANSFORMED_FILE}
echo "---" >> ${TRANSFORMED_FILE}
echo "" >> ${TRANSFORMED_FILE}
echo ":::info[Note]" >> ${TRANSFORMED_FILE}
echo "If you wish to suggest changes on this document, please open a PR on the [Liquidity Provider Server Repository](https://github.com/rsksmart/liquidity-provider-server.git)" >> ${TRANSFORMED_FILE}
echo ":::" >> ${TRANSFORMED_FILE}
echo "" >> ${TRANSFORMED_FILE}
cat ${TEMP_FILE} >> ${TRANSFORMED_FILE}
rm ${TEMP_FILE}
cp ${TRANSFORMED_FILE} ${BASE_DST}/advanced-operations.md
#####################################
# Trusted accounts #
#####################################
TEMP_FILE="trusted-accounts.md"
tail -n +2 ${BASE_SRC}/docs/Trusted-Accounts.md > ${TEMP_FILE}
TRANSFORMED_FILE="transformed/trusted-accounts.md"
echo "---" > ${TRANSFORMED_FILE}
echo "sidebar_label: Trusted Accounts feature" >> ${TRANSFORMED_FILE}
echo "sidebar_position: 240" >> ${TRANSFORMED_FILE}
echo "title: Flyover SDK - Trusted Accounts" >> ${TRANSFORMED_FILE}
echo "tags: [rsk, rootstock, rif, flyover, integrate, integration guide, rbtc, powpeg, automation]" >> ${TRANSFORMED_FILE}
echo "description: Trusted accounts allowed to perform automated PegIn and PegOut operations." >> ${TRANSFORMED_FILE}
echo "---" >> ${TRANSFORMED_FILE}
echo "" >> ${TRANSFORMED_FILE}
echo ":::info[Note]" >> ${TRANSFORMED_FILE}
echo "If you wish to suggest changes on this document, please open a PR on the [Liquidity Provider Server Repository](https://github.com/rsksmart/liquidity-provider-server.git)" >> ${TRANSFORMED_FILE}
echo ":::" >> ${TRANSFORMED_FILE}
echo "" >> ${TRANSFORMED_FILE}
cat ${TEMP_FILE} >> ${TRANSFORMED_FILE}
rm ${TEMP_FILE}
cp ${TRANSFORMED_FILE} ${BASE_DST}/trusted-accounts.md
# Step 4: Commit and Push Changes to Devportal Repository
- name: Commit and Push Changes
run: |
cd devportal
git config user.name "github-actions[bot]"
git config user.email "github-actions[bot]@users.noreply.github.com"
git add docs/02-developers/06-integrate/02-flyover/
git commit -m "Automated update from Liquidity Provider Server repository"
git remote set-url origin https://x-access-token:${{ steps.generate_token.outputs.token }}@github.com/rsksmart/devportal.git
git push -f origin ${BRANCH_NAME}
# Step 5: Create a Pull Request in the Devportal Repository
- name: Create Pull Request
run: |
cd devportal
curl -L -X POST -H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer ${{ steps.generate_token.outputs.token }}" \
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/repos/rsksmart/devportal/pulls \
-d "{\"title\":\"Liquidity-provider-server automated update of documentation ${BRANCH_NAME}\",\"body\":\"This PR updates the Devportal documentation with the latest changes from the Liquidity Provider Server repository.\",\"head\":\"${BRANCH_NAME}\",\"base\":\"main\"}"