Devportal auto implemlementation (#294) (#295) #17
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Update Devportal Documentation | |
on: | |
push: | |
paths: | |
- "README.md" | |
branches: | |
- main | |
permissions: read-all | |
jobs: | |
update-docs: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout Code | |
uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 | |
# Step 1: Clone the Devportal Repository | |
- name: Clone Devportal Repository | |
env: | |
GITHUB_TOKEN: ${{ secrets.DEVPORTAL_DOCS_UPDATE_TOKEN }} | |
run: | | |
TIMESTAMP=$(date +'%Y%m%d-%H%M%S') | |
BRANCH_NAME="update-from-rif-relay-${TIMESTAMP}" | |
echo "BRANCH_NAME=${BRANCH_NAME}" >> $GITHUB_ENV | |
git clone https://github.com/rsksmart/devportal.git | |
cd devportal | |
git checkout -b ${BRANCH_NAME} || git checkout ${BRANCH_NAME} | |
cd .. | |
# Step 2: Transform Each File and Copy to Devportal Repository | |
- name: Transform Files for Devportal | |
run: | | |
mkdir -p transformed | |
# Remove the unwanted first lines from README.md | |
TEMP_FILE="temp_README.md" | |
tail -n +1 README.md > ${TEMP_FILE} | |
# Remove the unwanted lines between START and END comments | |
sed '/<!--START-->/,/<!--END-->/d' README.md > ${TEMP_FILE} | |
# Process main README.md | |
TRANSFORMED_FILE="transformed/README.md" | |
echo "---" > ${TRANSFORMED_FILE} | |
echo "sidebar_label: Overview" >> ${TRANSFORMED_FILE} | |
echo "sidebar_position: 100" >> ${TRANSFORMED_FILE} | |
echo "title: RIF Relay - Overview" >> ${TRANSFORMED_FILE} | |
echo "description: RIF Relay Overview." >> ${TRANSFORMED_FILE} | |
echo "tags: [rif, envelope, relay, integrate, integration guide]" >> ${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 [Rif Relay Repository](https://github.com/rsksmart/rif-relay.git)" >> ${TRANSFORMED_FILE} | |
echo ":::" >> ${TRANSFORMED_FILE} | |
echo "" >> ${TRANSFORMED_FILE} | |
cat ${TEMP_FILE} >> ${TRANSFORMED_FILE} | |
# Clean up temporary file | |
rm ${TEMP_FILE} | |
cp ${TRANSFORMED_FILE} devportal/docs/02-developers/06-integrate/01-rif-relay/overview.md | |
# Process integrations section | |
TEMP_FILE="temp_integrate.md" | |
TRANSFORMED_FILE="transformed/integrate.md" | |
# Remove the unwanted first lines from section (title) | |
tail -n +2 docs/integrate.md > ${TEMP_FILE} | |
echo "---" > ${TRANSFORMED_FILE} | |
echo "sidebar_label: Integrations" >> ${TRANSFORMED_FILE} | |
echo "sidebar_position: 200" >> ${TRANSFORMED_FILE} | |
echo "title: RIF Relay Integration" >> ${TRANSFORMED_FILE} | |
echo "description: Integrating RIF Relay in a dApp." >> ${TRANSFORMED_FILE} | |
echo "tags: [rif, envelope, relay, integration guide]" >> ${TRANSFORMED_FILE} | |
echo "---" >> ${TRANSFORMED_FILE} | |
echo "" >> ${TRANSFORMED_FILE} | |
cat ${TEMP_FILE} >> ${TRANSFORMED_FILE} | |
# Clean up temporary file | |
rm ${TEMP_FILE} | |
cp ${TRANSFORMED_FILE} devportal/docs/02-developers/06-integrate/01-rif-relay/integrate.md | |
# Process setup section | |
TEMP_FILE="temp_installation-requirements.md" | |
TRANSFORMED_FILE="transformed/installation-requirements.md" | |
# Remove the unwanted first lines from section (title) | |
tail -n +2 docs/installation-requirements.md > ${TEMP_FILE} | |
echo "---" > ${TRANSFORMED_FILE} | |
echo "sidebar_label: Setup" >> ${TRANSFORMED_FILE} | |
echo "sidebar_position: 300" >> ${TRANSFORMED_FILE} | |
echo "title: RIF Relay Installation Requirements" >> ${TRANSFORMED_FILE} | |
echo "description: Requirements for installing RIF Relay." >> ${TRANSFORMED_FILE} | |
echo "tags: [rif, envelope, relay, user, guide]" >> ${TRANSFORMED_FILE} | |
echo "---" >> ${TRANSFORMED_FILE} | |
echo "" >> ${TRANSFORMED_FILE} | |
cat ${TEMP_FILE} >> ${TRANSFORMED_FILE} | |
# Clean up temporary file | |
rm ${TEMP_FILE} | |
cp ${TRANSFORMED_FILE} devportal/docs/02-developers/06-integrate/01-rif-relay/installation-requirements.md | |
# Process sample dapp section | |
TEMP_FILE="temp_sample-dapp.md" | |
TRANSFORMED_FILE="transformed/sample-dapp.md" | |
# Remove the unwanted first lines from section (title) | |
tail -n +2 docs/sample-dapp.md > ${TEMP_FILE} | |
echo "---" > ${TRANSFORMED_FILE} | |
echo "sidebar_label: RIF Relay Sample dApp" >> ${TRANSFORMED_FILE} | |
echo "sidebar_position: 400" >> ${TRANSFORMED_FILE} | |
echo "title: How to use the RIF Relay Sample dApp SDK" >> ${TRANSFORMED_FILE} | |
echo "description: RIF Relay Sample dApp SDK Starter kit." >> ${TRANSFORMED_FILE} | |
echo "tags: [rif, envelope, relay, integration guide]" >> ${TRANSFORMED_FILE} | |
echo "---" >> ${TRANSFORMED_FILE} | |
echo "" >> ${TRANSFORMED_FILE} | |
cat ${TEMP_FILE} >> ${TRANSFORMED_FILE} | |
# Clean up temporary file | |
rm ${TEMP_FILE} | |
cp ${TRANSFORMED_FILE} devportal/docs/02-developers/06-integrate/01-rif-relay/sample-dapp.md | |
# Process deployment section | |
TEMP_FILE="temp_deployment.md" | |
TRANSFORMED_FILE="transformed/deployment.md" | |
# Remove the unwanted first lines from section (title) | |
tail -n +2 docs/deployment.md > ${TEMP_FILE} | |
echo "---" > ${TRANSFORMED_FILE} | |
echo "sidebar_label: RIF Relay Deployment" >> ${TRANSFORMED_FILE} | |
echo "sidebar_position: 500" >> ${TRANSFORMED_FILE} | |
echo "title: RIF Relay Deployment" >> ${TRANSFORMED_FILE} | |
echo "description: RIF Relay deployment process." >> ${TRANSFORMED_FILE} | |
echo "tags: [rif, envelope, relay, integration guide]" >> ${TRANSFORMED_FILE} | |
echo "---" >> ${TRANSFORMED_FILE} | |
echo "" >> ${TRANSFORMED_FILE} | |
cat ${TEMP_FILE} >> ${TRANSFORMED_FILE} | |
# Clean up temporary file | |
rm ${TEMP_FILE} | |
cp ${TRANSFORMED_FILE} devportal/docs/02-developers/06-integrate/01-rif-relay/deployment.md | |
# Process develop section | |
TEMP_FILE="temp_develop.md" | |
TRANSFORMED_FILE="transformed/develop.md" | |
# Remove the unwanted first lines from section (title) | |
tail -n +2 docs/develop.md > ${TEMP_FILE} | |
echo "---" > ${TRANSFORMED_FILE} | |
echo "sidebar_label: Develop" >> ${TRANSFORMED_FILE} | |
echo "sidebar_position: 600" >> ${TRANSFORMED_FILE} | |
echo "title: RIF Relay Develop" >> ${TRANSFORMED_FILE} | |
echo "description: RIF Relay deployment process." >> ${TRANSFORMED_FILE} | |
echo "tags: [rif, envelope, relay, user, guide]" >> ${TRANSFORMED_FILE} | |
echo "---" >> ${TRANSFORMED_FILE} | |
echo "" >> ${TRANSFORMED_FILE} | |
cat ${TEMP_FILE} >> ${TRANSFORMED_FILE} | |
# Clean up temporary file | |
rm ${TEMP_FILE} | |
cp ${TRANSFORMED_FILE} devportal/docs/02-developers/06-integrate/01-rif-relay/develop.md | |
# Process contracts section | |
TEMP_FILE="temp_contracts.md" | |
TRANSFORMED_FILE="transformed/contracts.md" | |
# Remove the unwanted first lines from section (title) | |
tail -n +2 docs/contracts.md > ${TEMP_FILE} | |
echo "---" > ${TRANSFORMED_FILE} | |
echo "sidebar_label: Contracts" >> ${TRANSFORMED_FILE} | |
echo "sidebar_position: 700" >> ${TRANSFORMED_FILE} | |
echo "title: RIF Relay - Contracts" >> ${TRANSFORMED_FILE} | |
echo "description: RIF Relay Contracts." >> ${TRANSFORMED_FILE} | |
echo "tags: [rif, envelope, relay, integrate]" >> ${TRANSFORMED_FILE} | |
echo "---" >> ${TRANSFORMED_FILE} | |
echo "" >> ${TRANSFORMED_FILE} | |
cat ${TEMP_FILE} >> ${TRANSFORMED_FILE} | |
# Clean up temporary file | |
rm ${TEMP_FILE} | |
cp ${TRANSFORMED_FILE} devportal/docs/02-developers/06-integrate/01-rif-relay/contracts.md | |
# Process smart wallets section | |
TEMP_FILE="temp_smart-wallets.md" | |
TRANSFORMED_FILE="transformed/smart-wallets.md" | |
# Remove the unwanted first lines from section (title) | |
tail -n +2 docs/smart-wallets.md > ${TEMP_FILE} | |
echo "---" > ${TRANSFORMED_FILE} | |
echo "sidebar_label: Smart Wallets" >> ${TRANSFORMED_FILE} | |
echo "sidebar_position: 800" >> ${TRANSFORMED_FILE} | |
echo "title: RIF Relay Smart Wallets" >> ${TRANSFORMED_FILE} | |
echo "description: RIF Relay Smart Wallets." >> ${TRANSFORMED_FILE} | |
echo "tags: [rif, envelope, relay, user, guide]" >> ${TRANSFORMED_FILE} | |
echo "---" >> ${TRANSFORMED_FILE} | |
echo "" >> ${TRANSFORMED_FILE} | |
cat ${TEMP_FILE} >> ${TRANSFORMED_FILE} | |
# Clean up temporary file | |
rm ${TEMP_FILE} | |
cp ${TRANSFORMED_FILE} devportal/docs/02-developers/06-integrate/01-rif-relay/smart-wallets.md | |
# Process versions section | |
TEMP_FILE="temp_versions.md" | |
TRANSFORMED_FILE="transformed/versions.md" | |
# Remove the unwanted first lines from section (title) | |
tail -n +2 docs/versions.md > ${TEMP_FILE} | |
echo "---" > ${TRANSFORMED_FILE} | |
echo "sidebar_label: Versions" >> ${TRANSFORMED_FILE} | |
echo "sidebar_position: 900" >> ${TRANSFORMED_FILE} | |
echo "title: RIF Relay Versions" >> ${TRANSFORMED_FILE} | |
echo "description: RIF Relay Versions." >> ${TRANSFORMED_FILE} | |
echo "tags: [rif, envelope, rif relay, integration guide]" >> ${TRANSFORMED_FILE} | |
echo "---" >> ${TRANSFORMED_FILE} | |
echo "" >> ${TRANSFORMED_FILE} | |
cat ${TEMP_FILE} >> ${TRANSFORMED_FILE} | |
# Clean up temporary file | |
rm ${TEMP_FILE} | |
cp ${TRANSFORMED_FILE} devportal/docs/02-developers/06-integrate/01-rif-relay/versions.md | |
# Process gas costs section | |
TEMP_FILE="temp_gas-costs.md" | |
TRANSFORMED_FILE="transformed/gas-costs.md" | |
# Remove the unwanted first lines from section (title) | |
tail -n +2 docs/gas-costs.md > ${TEMP_FILE} | |
echo "---" > ${TRANSFORMED_FILE} | |
echo "sidebar_label: Gas Costs" >> ${TRANSFORMED_FILE} | |
echo "sidebar_position: 950" >> ${TRANSFORMED_FILE} | |
echo "title: RIF Relay - Gas Costs" >> ${TRANSFORMED_FILE} | |
echo "description: RIF Relay Gas Costs." >> ${TRANSFORMED_FILE} | |
echo "tags: [rif, envelope, relay, integrate]" >> ${TRANSFORMED_FILE} | |
echo "---" >> ${TRANSFORMED_FILE} | |
echo "" >> ${TRANSFORMED_FILE} | |
cat ${TEMP_FILE} >> ${TRANSFORMED_FILE} | |
# Clean up temporary file | |
rm ${TEMP_FILE} | |
cp ${TRANSFORMED_FILE} devportal/docs/02-developers/06-integrate/01-rif-relay/gas-costs.md | |
# Process architecture section | |
TEMP_FILE="temp_architecture.md" | |
TRANSFORMED_FILE="transformed/architecture.md" | |
# Remove the unwanted first lines from section (title) | |
tail -n +2 docs/architecture.md > ${TEMP_FILE} | |
echo "---" > ${TRANSFORMED_FILE} | |
echo "sidebar_label: Architecture" >> ${TRANSFORMED_FILE} | |
echo "sidebar_position: 980" >> ${TRANSFORMED_FILE} | |
echo "title: RIF Relay - Architecture" >> ${TRANSFORMED_FILE} | |
echo "description: RIF Relay Architeture." >> ${TRANSFORMED_FILE} | |
echo "tags: [rif, envelope, relay, integrate]" >> ${TRANSFORMED_FILE} | |
echo "---" >> ${TRANSFORMED_FILE} | |
echo "" >> ${TRANSFORMED_FILE} | |
cat ${TEMP_FILE} >> ${TRANSFORMED_FILE} | |
# Clean up temporary file | |
rm ${TEMP_FILE} | |
cp ${TRANSFORMED_FILE} devportal/docs/02-developers/06-integrate/01-rif-relay/architecture.md | |
# Step 3: Commit and Push Changes to Devportal Repository | |
- name: Commit and Push Changes | |
env: | |
GITHUB_TOKEN: ${{ secrets.DEVPORTAL_DOCS_UPDATE_TOKEN }} | |
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/01-rif-relay/overview.md docs/02-developers/06-integrate/01-rif-relay/integrate.md docs/02-developers/06-integrate/01-rif-relay/installation-requirements.md docs/02-developers/06-integrate/01-rif-relay/sample-dapp.md docs/02-developers/06-integrate/01-rif-relay/deployment.md docs/02-developers/06-integrate/01-rif-relay/develop.md docs/02-developers/06-integrate/01-rif-relay/contracts.md docs/02-developers/06-integrate/01-rif-relay/smart-wallets.md docs/02-developers/06-integrate/01-rif-relay/versions.md docs/02-developers/06-integrate/01-rif-relay/gas-costs.md docs/02-developers/06-integrate/01-rif-relay/architecture.md | |
git commit -m "Automated update from repository" | |
# Configure the remote URL with the token for authentication | |
git remote set-url origin https://x-access-token:${GITHUB_TOKEN}@github.com/rsksmart/devportal.git | |
git push -f origin ${BRANCH_NAME} | |
# Step 4: Create a Pull Request in the Devportal Repository | |
- name: Create Pull Request | |
env: | |
GITHUB_TOKEN: ${{ secrets.DEVPORTAL_DOCS_UPDATE_TOKEN }} | |
run: | | |
cd devportal | |
curl -L -X POST -H "Accept: application/vnd.github+json" \ | |
-H "Authorization: Bearer ${{ secrets.DEVPORTAL_DOCS_UPDATE_TOKEN }}" \ | |
-H "X-GitHub-Api-Version: 2022-11-28" \ | |
https://api.github.com/repos/rsksmart/devportal/pulls \ | |
-d "{\"title\":\"Rif-relay automated update of documentation ${BRANCH_NAME}\",\"body\":\"This PR updates the Devportal documentation with the latest changes from the original repository.\",\"head\":\"${BRANCH_NAME}\",\"base\":\"main\"}" |