| Usage example | Plugin document | Sample project |
|---|---|---|
| Plugin development template | Plugin development template | first-plugin-demo |
| Dynamic configuration plugin | Dynamic configuration plugin | flowcontrol-demo |
| Flow control plugin | Flow control plugin | flowcontrol-demo |
| Lossless online and offline plugin | Lossless online and offline plugin | grace-demo |
| Load balancer plugin | Load balancer plugin | loadbalancer-demo |
| Monitor plugin | Monitor plugin | monitor-demo |
| Router plugin | Router plugin | router-demo |
| Tag transmission plugin | Tag transmission plugin | tag-transmission-demo |
| Registry plugin | Registry plugin | registry-demo |
| SpringBoot registry plugin | SpringBoot registry plugin | registry-demo |
| Visibility plugin | Visibility plugin | visibility-demo |
| Outlier instance removal plugin | Outlier instance removal plugin | removal-demo |
| MQ consume prohibition plugin | MQ consume prohibition plugin | mq-consume-prohibition-demo |
If no demo is added, skip this step
Add new demo related commands to the scripts/copy_jar.sh
# create folder
mkdir -p package/xxxxx-demo
# copy jar
find . -type f -name "xxxxx-A.jar" -exec cp -v {} package/xxxxx-demo/ \;
find . -type f -name "xxxxx-B.jar" -exec cp -v {} package/xxxxx-demo/ \;
# package
tar -czvf package/result/sermant-examples-xxxxx-demo-$*.tar.gz -C package/xxxxx-demo/ .If no demo is added, skip this step
Add new demo related commands to the .github/workflows/create_release.yml
# upload the release package ========================
- name: Upload Release xxxxx-demo # upload xxxxx demo release package
id: upload-release-asset-xxxxx
uses: actions/upload-release-asset@v1.0.2
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ${{ github.workspace }}/package/result/sermant-examples-xxxxx-demo-${{ env.version }}.tar.gz
asset_name: sermant-examples-xxxxx-demo-${{ env.version }}.tar.gz
asset_content_type: application/tarFinally, submit and merge above changes
git tag vx.x.xThis step requires direct push permission to this repository.