add publish script
This commit is contained in:
parent
7406881eeb
commit
1358e27b77
3 changed files with 52 additions and 15 deletions
3
Makefile
3
Makefile
|
@ -11,7 +11,8 @@ ollama: llama
|
|||
|
||||
.PHONY: app
|
||||
app: ollama
|
||||
npm run --prefix app make
|
||||
npm install --prefix app
|
||||
npm run --prefix app make:sign
|
||||
|
||||
clean:
|
||||
go clean
|
||||
|
|
|
@ -1,33 +1,40 @@
|
|||
# Development
|
||||
|
||||
ollama is built using Python 3 and uses [Poetry](https://python-poetry.org/) to manage dependencies and build packages.
|
||||
Install required tools:
|
||||
|
||||
```
|
||||
pip install poetry
|
||||
brew install cmake go node
|
||||
```
|
||||
|
||||
Install ollama and its dependencies:
|
||||
Then run `make`:
|
||||
|
||||
```
|
||||
poetry install --extras server --with dev
|
||||
make
|
||||
```
|
||||
|
||||
Run ollama server:
|
||||
Now you can run `ollama`:
|
||||
|
||||
```
|
||||
poetry run ollama server
|
||||
./ollama
|
||||
```
|
||||
|
||||
Update dependencies:
|
||||
## Releasing
|
||||
|
||||
To release a new version of Ollama you'll need to set some environment variables:
|
||||
|
||||
* `GITHUB_TOKEN`: your GitHub token
|
||||
* `APPLE_IDENTITY`: the Apple signing identity (macOS only)
|
||||
* `APPLE_ID`: your Apple ID
|
||||
* `APPLE_PASSWORD`: your Apple ID app-specific password
|
||||
* `APPLE_TEAM_ID`: the Apple team ID for the signing identity
|
||||
* `TELEMETRY_WRITE_KEY`: segment write key for telemetry
|
||||
|
||||
Then run the publish script with the target version:
|
||||
|
||||
```
|
||||
poetry update --extras server --with dev
|
||||
poetry lock
|
||||
poetry export >requirements.txt
|
||||
VERSION=0.0.2 ./scripts/publish.sh
|
||||
```
|
||||
|
||||
Build binary package:
|
||||
|
||||
```
|
||||
poetry build
|
||||
```
|
||||
|
||||
|
||||
|
|
29
scripts/publish.sh
Executable file
29
scripts/publish.sh
Executable file
|
@ -0,0 +1,29 @@
|
|||
# Set your variables here.
|
||||
REPO="jmorganca/ollama"
|
||||
|
||||
# Check if VERSION is set
|
||||
if [[ -z "${VERSION}" ]]; then
|
||||
echo "VERSION is not set. Please set the VERSION environment variable."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
OS=$(go env GOOS)
|
||||
ARCH=$(go env GOARCH)
|
||||
|
||||
make app
|
||||
|
||||
# Create a new tag if it doesn't exist.
|
||||
if ! git rev-parse v$VERSION >/dev/null 2>&1; then
|
||||
git tag v$VERSION
|
||||
git push origin v$VERSION
|
||||
fi
|
||||
|
||||
# Create a new release.
|
||||
gh release create v$VERSION
|
||||
|
||||
# Upload the zip file.
|
||||
gh release upload v$VERSION "app/out/make/zip/${OS}/${ARCH}/Ollama-${OS}-${ARCH}-${VERSION}.zip#Ollama-${OS}-${ARCH}.zip"
|
||||
|
||||
# Upload the binary.
|
||||
gh release upload v$VERSION "./ollama#ollama-${OS}-${ARCH}"
|
||||
|
Loading…
Reference in a new issue