mirror of
https://github.com/meshtastic/meshtastic.git
synced 2024-11-11 08:04:26 -08:00
f2e22d63c9
Thanks to aspell and languagetool. Hand picked from these, there are too many strange things in the English language to be perfectly syntactical.
86 lines
2.1 KiB
Markdown
86 lines
2.1 KiB
Markdown
---
|
||
id: publish
|
||
title: Publishing Meshtastic
|
||
sidebar_label: Publishing Meshtastic
|
||
---
|
||
|
||
This document is a WIP.
|
||
|
||
If you’d like to do ‘real’ releases with your changes, the procedure is:
|
||
|
||
## Device
|
||
|
||
* Update protobufs
|
||
* * cd proto
|
||
* * git checkout master && git pull
|
||
* * cd ..
|
||
* * git add proto
|
||
* * git commit -m "updating proto submodule to latest"
|
||
* run bin/regen-protos.sh
|
||
* edit version.properties to set release version
|
||
* commit and push (or merge) to root of repo - this should cause GitHub to start a release build (see the CI actions)
|
||
* edit the draft release text and click publish
|
||
|
||
### Update Protobufs
|
||
|
||
|
||
## Android
|
||
|
||
### Pre-requisites
|
||
|
||
* Add repository secrets
|
||
* * KEYSTORE_FILENAME
|
||
* * * name of the .jks
|
||
* * KEYSTORE
|
||
* * * we will convert the .jks to base64
|
||
* * * openssl base64 < filename.jks | tr -d '\n' | tee filename.txt
|
||
* * KEYSTORE_PROPERTIES
|
||
* * * storePassword=nononononono
|
||
keyPassword=nononononono
|
||
keyAlias=upload
|
||
storeFile=nononononono.jks
|
||
|
||
|
||
### Instructions - Automated
|
||
|
||
* Update protobufs
|
||
* Go to Actions / Make Release / Run Workflow
|
||
* Pick the Releases branch
|
||
* Enter the version found in app/gradle.build
|
||
*
|
||
## iOS
|
||
|
||
TBD
|
||
|
||
## Python
|
||
|
||
### Pre-requisites
|
||
|
||
* Python Packages
|
||
* * pip3 install pdoc3
|
||
* * pip3 install pygatt
|
||
* * pip3 install pandoc
|
||
* * pip install twine
|
||
* * pip3 install -r requirements.txt
|
||
* https://pandoc.org/installing.html
|
||
* nanopb 0.4.4 installed
|
||
|
||
### Instructions
|
||
|
||
* Update protobufs
|
||
* * cd proto
|
||
* * git checkout master && git pull
|
||
* * cd ..
|
||
* * git add proto
|
||
* * git commit -m "updating proto submodule to latest"
|
||
* run bin/regen-protos.sh
|
||
* bump the version in setup.py
|
||
* run bin/test-release.sh
|
||
* * Ensure no errors.
|
||
* run bin/upload-release.sh
|
||
|
||
I usually just edit setup.py to bump the version number, then run "bin/upload-release.sh" (though you should use bin/test-release.sh for the first time - which is just a dry deploy to the pypi test server). This script does the build (including new docs - which will end up in the git checkin) and upload to pypi. Then I do a git commit/push and tag wit the version number.
|
||
|
||
:::note
|
||
You need permissions in the GitHub project to make a build
|
||
::: |