Releasing a New Version
New versions of a Function are created automatically when a new GitHub release is created. For detailed instructions on creating a new GitHub release, refer to GitHub’s documentation.Naming Convention
We recommend using the Semantic Versioning (Semver) naming convention to indicate the nature of changes in your release:- MAJOR: Breaking changes.
- MINOR: Backward-compatible functionality.
- PATCH: Backward-compatible bug fixes.
Deployment Process
The associated GitHub action is triggered when you create a release on GitHub. This will:- Spin up a deployment container.
- Extract your function’s input schema and validate it.
- Build your function code.
- Send the validated and compiled function code to the Speckle Automate server via an API call using your credentials.
- Automate validates the payload and reports success.
Monitoring Release Actions
The release process triggers a GitHub Action, which can be monitored in your GitHub repository’s Actions tab. If errors occur during the release process, they will be displayed here.Troubleshooting
If you encounter issues during deployment:- Review the error logs in the Actions tab for details.
- Search for solutions or ask for assistance on the Speckle Community Forum.
💡 Advanced CustomisationWhile the default deployment setup (e.g.,
Dockerfile
, workflow.yml
) works for most use cases, you can customise these files for advanced scenarios:-
Customising the Workflow:
- Adjust the
workflow.yml
file for multipart build steps or additional artefacts. - Ensure all necessary artefacts (e.g.,
functionInputs.json
) are generated.
- Adjust the
-
Customising the Runtime:
- Modify the
Dockerfile
to include additional dependencies, libraries, or specific runtime versions (e.g., a custom-built Python environment). - These adjustments allow you to tailor the execution runtime for your function.
- Modify the