Merge pull request #56 from amithkoujalgi/test

Updated GitHub workflows to publish to GItHub packages instead of Maven Central
This commit is contained in:
Amith Koujalgi 2024-07-13 18:06:44 +05:30 committed by GitHub
commit 7580c6a549
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
6 changed files with 180 additions and 177 deletions

View File

@ -1,68 +1,41 @@
## This workflow will build a package using Maven and then publish it to GitHub packages when a release is created # This workflow will build a package using Maven and then publish it to GitHub packages when a release is created
## For more information see: https://github.com/actions/setup-java/blob/main/docs/advanced-usage.md#apache-maven-with-a-settings-path # For more information see: https://github.com/actions/setup-java/blob/main/docs/advanced-usage.md#apache-maven-with-a-settings-path
#
#name: Test and Publish Package name: Release Artifacts
#
##on: on:
## release: release:
## types: [ "created" ] types: [ created ]
#
#on: jobs:
# push: build:
# branches: [ "main" ]
# workflow_dispatch: runs-on: ubuntu-latest
# permissions:
#jobs: contents: read
# build: packages: write
# runs-on: ubuntu-latest
# permissions: steps:
# contents: write - uses: actions/checkout@v3
# packages: write - name: Set up JDK 17
# steps: uses: actions/setup-java@v3
# - uses: actions/checkout@v3 with:
# - name: Set up JDK 11 java-version: '17'
# uses: actions/setup-java@v3 distribution: 'temurin'
# with: server-id: github # Value of the distributionManagement/repository/id field of the pom.xml
# java-version: '11' settings-path: ${{ github.workspace }} # location for the settings.xml file
# distribution: 'adopt-hotspot'
# server-id: github # Value of the distributionManagement/repository/id field of the pom.xml - name: Find and Replace
# settings-path: ${{ github.workspace }} # location for the settings.xml file uses: jacobtomlinson/gha-find-replace@v3
# - name: Build with Maven with:
# run: mvn --file pom.xml -U clean package -Punit-tests find: "ollama4j-revision"
# - name: Set up Apache Maven Central (Overwrite settings.xml) replace: ${{ github.ref_name }}
# uses: actions/setup-java@v3 regex: false
# with: # running setup-java again overwrites the settings.xml
# java-version: '11' - name: Build with Maven
# distribution: 'adopt-hotspot' run: mvn --file pom.xml -U clean package -Punit-tests
# cache: 'maven'
# server-id: ossrh - name: Publish to GitHub Packages Apache Maven
# server-username: MAVEN_USERNAME run: mvn deploy -s $GITHUB_WORKSPACE/settings.xml --file pom.xml
# server-password: MAVEN_PASSWORD env:
# gpg-private-key: ${{ secrets.GPG_PRIVATE_KEY }} GITHUB_TOKEN: ${{ github.token }}
# gpg-passphrase: MAVEN_GPG_PASSPHRASE
# - name: Set up Maven cache
# uses: actions/cache@v3
# with:
# path: ~/.m2/repository
# key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
# restore-keys: |
# ${{ runner.os }}-maven-
# - name: Build
# run: mvn -B -ntp clean install
# - name: Upload coverage reports to Codecov
# uses: codecov/codecov-action@v3
# env:
# CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
# - name: Publish to GitHub Packages Apache Maven
# # if: >
# # github.event_name != 'pull_request' &&
# # github.ref_name == 'main' &&
# # contains(github.event.head_commit.message, 'release')
# run: |
# git config --global user.email "koujalgi.amith@gmail.com"
# git config --global user.name "amithkoujalgi"
# mvn -B -ntp -DskipTests -Pci-cd -Darguments="-DskipTests -Pci-cd" release:clean release:prepare release:perform
# env:
# MAVEN_USERNAME: ${{ secrets.OSSRH_USERNAME }}
# MAVEN_PASSWORD: ${{ secrets.OSSRH_PASSWORD }}
# MAVEN_GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}

View File

@ -1,52 +0,0 @@
## Simple workflow for deploying static content to GitHub Pages
#name: Deploy Javadoc content to Pages
#
#on:
# # Runs on pushes targeting the default branch
# push:
# branches: [ "none" ]
#
# # Allows you to run this workflow manually from the Actions tab
# workflow_dispatch:
#
## Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
#permissions:
# contents: read
# pages: write
# id-token: write
# packages: write
## Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
## However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
#concurrency:
# group: "pages"
# cancel-in-progress: false
#
#jobs:
# # Single deploy job since we're just deploying
# deploy:
# runs-on: ubuntu-latest
#
# environment:
# name: github-pages
# url: ${{ steps.deployment.outputs.page_url }}
# steps:
# - uses: actions/checkout@v3
# - name: Set up JDK 11
# uses: actions/setup-java@v3
# with:
# java-version: '11'
# distribution: 'adopt-hotspot'
# server-id: github # Value of the distributionManagement/repository/id field of the pom.xml
# settings-path: ${{ github.workspace }} # location for the settings.xml file
# - name: Build with Maven
# run: mvn --file pom.xml -U clean package
# - name: Setup Pages
# uses: actions/configure-pages@v3
# - name: Upload artifact
# uses: actions/upload-pages-artifact@v2
# with:
# # Upload entire repository
# path: './target/apidocs/.'
# - name: Deploy to GitHub Pages
# id: deployment
# uses: actions/deploy-pages@v2

View File

@ -11,7 +11,7 @@ the [completion](https://github.com/jmorganca/ollama/blob/main/docs/api.md#gener
Use the `OptionBuilder` to build the `Options` object Use the `OptionBuilder` to build the `Options` object
with [extra parameters](https://github.com/jmorganca/ollama/blob/main/docs/modelfile.md#valid-parameters-and-values). with [extra parameters](https://github.com/jmorganca/ollama/blob/main/docs/modelfile.md#valid-parameters-and-values).
Refer Refer
to [this](/docs/apis-extras/options-builder). to [this](/apis-extras/options-builder).
## Try asking a question about the model. ## Try asking a question about the model.
@ -65,6 +65,7 @@ public class Main {
} }
} }
``` ```
You will get a response similar to: You will get a response similar to:
> The > The

View File

@ -40,6 +40,8 @@ const config = {
/** @type {import('@docusaurus/preset-classic').Options} */ /** @type {import('@docusaurus/preset-classic').Options} */
({ ({
docs: { docs: {
path: 'docs',
routeBasePath: '', // change this to any URL route you'd want. For example: `home` - if you want /home/intro.
sidebarPath: './sidebars.js', sidebarPath: './sidebars.js',
// Please change this to your repo. // Please change this to your repo.
// Remove this to remove the "edit this page" links. // Remove this to remove the "edit this page" links.

68
maven-publish.yml Normal file
View File

@ -0,0 +1,68 @@
## This workflow will build a package using Maven and then publish it to GitHub packages when a release is created
## For more information see: https://github.com/actions/setup-java/blob/main/docs/advanced-usage.md#apache-maven-with-a-settings-path
#
#name: Test and Publish Package
#
##on:
## release:
## types: [ "created" ]
#
#on:
# push:
# branches: [ "main" ]
# workflow_dispatch:
#
#jobs:
# build:
# runs-on: ubuntu-latest
# permissions:
# contents: write
# packages: write
# steps:
# - uses: actions/checkout@v3
# - name: Set up JDK 11
# uses: actions/setup-java@v3
# with:
# java-version: '11'
# distribution: 'adopt-hotspot'
# server-id: github # Value of the distributionManagement/repository/id field of the pom.xml
# settings-path: ${{ github.workspace }} # location for the settings.xml file
# - name: Build with Maven
# run: mvn --file pom.xml -U clean package -Punit-tests
# - name: Set up Apache Maven Central (Overwrite settings.xml)
# uses: actions/setup-java@v3
# with: # running setup-java again overwrites the settings.xml
# java-version: '11'
# distribution: 'adopt-hotspot'
# cache: 'maven'
# server-id: ossrh
# server-username: MAVEN_USERNAME
# server-password: MAVEN_PASSWORD
# gpg-private-key: ${{ secrets.GPG_PRIVATE_KEY }}
# gpg-passphrase: MAVEN_GPG_PASSPHRASE
# - name: Set up Maven cache
# uses: actions/cache@v3
# with:
# path: ~/.m2/repository
# key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
# restore-keys: |
# ${{ runner.os }}-maven-
# - name: Build
# run: mvn -B -ntp clean install
# - name: Upload coverage reports to Codecov
# uses: codecov/codecov-action@v3
# env:
# CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
# - name: Publish to GitHub Packages Apache Maven
# # if: >
# # github.event_name != 'pull_request' &&
# # github.ref_name == 'main' &&
# # contains(github.event.head_commit.message, 'release')
# run: |
# git config --global user.email "koujalgi.amith@gmail.com"
# git config --global user.name "amithkoujalgi"
# mvn -B -ntp -DskipTests -Pci-cd -Darguments="-DskipTests -Pci-cd" release:clean release:prepare release:perform
# env:
# MAVEN_USERNAME: ${{ secrets.OSSRH_USERNAME }}
# MAVEN_PASSWORD: ${{ secrets.OSSRH_PASSWORD }}
# MAVEN_GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}

111
pom.xml
View File

@ -1,14 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<groupId>io.github.amithkoujalgi</groupId> <groupId>io.github.amithkoujalgi</groupId>
<artifactId>ollama4j</artifactId> <artifactId>ollama4j</artifactId>
<version>1.0.78-SNAPSHOT</version> <version>ollama4j-revision</version>
<name>Ollama4j</name> <name>Ollama4j</name>
<description>Java library for interacting with Ollama API.</description> <description>Java library for interacting with Ollama API.</description>
<url>https://github.com/amithkoujalgi/ollama4j</url> <url>https://github.com/amithkoujalgi/ollama4j</url>
<packaging>jar</packaging>
<properties> <properties>
<maven.compiler.source>11</maven.compiler.source> <maven.compiler.source>11</maven.compiler.source>
@ -127,15 +129,15 @@
</execution> </execution>
</executions> </executions>
</plugin> </plugin>
<plugin> <!-- <plugin>-->
<groupId>org.apache.maven.plugins</groupId> <!-- <groupId>org.apache.maven.plugins</groupId>-->
<artifactId>maven-release-plugin</artifactId> <!-- <artifactId>maven-release-plugin</artifactId>-->
<version>3.0.1</version> <!-- <version>3.0.1</version>-->
<configuration> <!-- <configuration>-->
<!-- <goals>install</goals>--> <!-- &lt;!&ndash; <goals>install</goals>&ndash;&gt;-->
<tagNameFormat>v@{project.version}</tagNameFormat> <!-- <tagNameFormat>v@{project.version}</tagNameFormat>-->
</configuration> <!-- </configuration>-->
</plugin> <!-- </plugin>-->
</plugins> </plugins>
</build> </build>
@ -187,14 +189,23 @@
</dependency> </dependency>
</dependencies> </dependencies>
<!-- <distributionManagement>-->
<!-- <snapshotRepository>-->
<!-- <id>ossrh</id>-->
<!-- <url>https://s01.oss.sonatype.org/content/repositories/snapshots</url>-->
<!-- </snapshotRepository>-->
<!-- <repository>-->
<!-- <id>ossrh</id>-->
<!-- <url>https://s01.oss.sonatype.org/service/local/staging/deploy/maven2</url>-->
<!-- </repository>-->
<!-- </distributionManagement>-->
<!-- Replaced publishing packages to GitHub Packages instead of Maven central -->
<distributionManagement> <distributionManagement>
<snapshotRepository>
<id>ossrh</id>
<url>https://s01.oss.sonatype.org/content/repositories/snapshots</url>
</snapshotRepository>
<repository> <repository>
<id>ossrh</id> <id>github</id>
<url>https://s01.oss.sonatype.org/service/local/staging/deploy/maven2</url> <name>GitHub Packages</name>
<url>https://maven.pkg.github.com/amithkoujalgi/ollama4j</url>
</repository> </repository>
</distributionManagement> </distributionManagement>
@ -250,39 +261,39 @@
</properties> </properties>
<build> <build>
<plugins> <plugins>
<plugin> <!-- <plugin>-->
<groupId>org.apache.maven.plugins</groupId> <!-- <groupId>org.apache.maven.plugins</groupId>-->
<artifactId>maven-gpg-plugin</artifactId> <!-- <artifactId>maven-gpg-plugin</artifactId>-->
<version>3.1.0</version> <!-- <version>3.1.0</version>-->
<executions> <!-- <executions>-->
<execution> <!-- <execution>-->
<id>sign-artifacts</id> <!-- <id>sign-artifacts</id>-->
<phase>verify</phase> <!-- <phase>verify</phase>-->
<goals> <!-- <goals>-->
<goal>sign</goal> <!-- <goal>sign</goal>-->
</goals> <!-- </goals>-->
<configuration> <!-- <configuration>-->
<!-- Prevent gpg from using pinentry programs. Fixes: <!-- &lt;!&ndash; Prevent gpg from using pinentry programs. Fixes:-->
gpg: signing failed: Inappropriate ioctl for device --> <!-- gpg: signing failed: Inappropriate ioctl for device &ndash;&gt;-->
<gpgArguments> <!-- <gpgArguments>-->
<arg>--pinentry-mode</arg> <!-- <arg>&#45;&#45;pinentry-mode</arg>-->
<arg>loopback</arg> <!-- <arg>loopback</arg>-->
</gpgArguments> <!-- </gpgArguments>-->
</configuration> <!-- </configuration>-->
</execution> <!-- </execution>-->
</executions> <!-- </executions>-->
</plugin> <!-- </plugin>-->
<plugin> <!-- <plugin>-->
<groupId>org.sonatype.plugins</groupId> <!-- <groupId>org.sonatype.plugins</groupId>-->
<artifactId>nexus-staging-maven-plugin</artifactId> <!-- <artifactId>nexus-staging-maven-plugin</artifactId>-->
<version>1.6.13</version> <!-- <version>1.6.13</version>-->
<extensions>true</extensions> <!-- <extensions>true</extensions>-->
<configuration> <!-- <configuration>-->
<serverId>ossrh</serverId> <!-- <serverId>ossrh</serverId>-->
<nexusUrl>https://s01.oss.sonatype.org/</nexusUrl> <!-- <nexusUrl>https://s01.oss.sonatype.org/</nexusUrl>-->
<autoReleaseAfterClose>true</autoReleaseAfterClose> <!-- <autoReleaseAfterClose>true</autoReleaseAfterClose>-->
</configuration> <!-- </configuration>-->
</plugin> <!-- </plugin>-->
<plugin> <plugin>
<groupId>org.jacoco</groupId> <groupId>org.jacoco</groupId>