Skip to main content
Glama
RELEASE_GUIDE.md4.5 kB
# Release Guide for Webex MCP Server This guide walks you through creating your first v0.1.0 release and setting up automated Docker Hub publishing. ## 🚀 Quick Start ### 1. Set Up Docker Hub Integration Follow the detailed setup in [DOCKER_HUB_SETUP.md](./DOCKER_HUB_SETUP.md): 1. **Create Docker Hub access token** 2. **Add GitHub secrets:** - `DOCKER_HUB_USERNAME`: Your Docker Hub username - `DOCKER_HUB_TOKEN`: Your access token ### 2. Test Locally First Before creating a release, ensure everything works: ```bash # Run all tests npm run validate # Test Docker build docker build -t webex-mcp-server:test . # Test the built image echo "WEBEX_PUBLIC_WORKSPACE_API_KEY=your-test-token" > .env.test docker run --rm --env-file .env.test webex-mcp-server:test node index.js tools ``` ### 3. Create Release (Option A: Using Script) Use the provided release script: ```bash # Make sure you're on main branch with clean working directory git checkout main git pull origin main # Run the release script ./scripts/release.sh 0.1.0 ``` ### 4. Create Release (Option B: Manual) If you prefer manual control: ```bash # Ensure clean working directory git status # Update version (already done - package.json shows 0.1.0) # Commit any final changes git add . git commit -m "chore: prepare for v0.1.0 release" # Create and push tag git tag v0.1.0 git push origin main git push origin v0.1.0 ``` ## 📋 What Happens During Release ### GitHub Actions Workflow When you push a tag (e.g., `v0.1.0`), the CD workflow automatically: 1. **🧪 Runs Tests** - Executes all 118 unit tests - Runs linting and code quality checks - Generates test coverage report 2. **🐳 Builds Docker Image** - Multi-platform build (AMD64 + ARM64) - Uses Docker Buildx for cross-platform support - Optimized multi-stage build from Dockerfile 3. **📦 Publishes to Docker Hub** - Tags: `latest`, `0.1.0`, `v0.1.0` - Pushes to `YOUR_USERNAME/webex-mcp-server` - Generates build summary ### Expected Timeline - **Tests**: ~2-3 minutes - **Docker Build**: ~5-8 minutes - **Docker Push**: ~2-3 minutes - **Total**: ~10-15 minutes ## 🔍 Monitoring Your Release ### 1. GitHub Actions Monitor progress at: ``` https://github.com/YOUR_USERNAME/webex-messaging-mcp-server/actions ``` ### 2. Docker Hub Check your published image at: ``` https://hub.docker.com/r/YOUR_USERNAME/webex-mcp-server ``` ### 3. Workflow Status The workflow will show: - ✅ **Test job**: All tests pass - ✅ **Build and Push job**: Image published successfully ## 🧪 Testing the Published Image Once published, test your Docker image: ```bash # Pull the image docker pull YOUR_USERNAME/webex-mcp-server:0.1.0 # Test with your environment docker run -i --rm --env-file .env YOUR_USERNAME/webex-mcp-server:0.1.0 # Test tool listing echo "WEBEX_PUBLIC_WORKSPACE_API_KEY=your-token" > .env.test docker run --rm --env-file .env.test YOUR_USERNAME/webex-mcp-server:0.1.0 node index.js tools ``` ## 🔧 Troubleshooting ### Common Issues 1. **Tests Fail** ```bash # Run tests locally first npm run validate ``` 2. **Docker Build Fails** ```bash # Test Docker build locally docker build -t test-image . ``` 3. **Authentication Error** - Verify Docker Hub secrets are correct - Check token permissions (Read, Write, Delete) 4. **Tag Already Exists** ```bash # Delete tag if needed git tag -d v0.1.0 git push origin :refs/tags/v0.1.0 ``` ### Debug Steps 1. **Check GitHub Actions logs** for detailed error messages 2. **Verify secrets** in repository settings 3. **Test locally** with same commands as workflow 4. **Check Docker Hub** for repository permissions ## 📈 Next Steps After successful v0.1.0 release: 1. **Create release notes** on GitHub 2. **Update documentation** with new image tags 3. **Plan next version** (v0.1.1, v0.2.0, etc.) 4. **Monitor usage** on Docker Hub ## 🔄 Future Releases For subsequent releases: ```bash # For patch releases (bug fixes) ./scripts/release.sh 0.1.1 # For minor releases (new features) ./scripts/release.sh 0.2.0 # For major releases (breaking changes) ./scripts/release.sh 1.0.0 ``` ## 📚 Additional Resources - [GitHub Actions Documentation](https://docs.github.com/en/actions) - [Docker Hub Documentation](https://docs.docker.com/docker-hub/) - [Semantic Versioning](https://semver.org/) - [Docker Multi-platform Builds](https://docs.docker.com/build/building/multi-platform/)

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Kashyap-AI-ML-Solutions/webex-messaging-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server