forked from Mirror/ollama4j
		
	Compare commits
	
		
			40 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|   | 4b49d6004c | ||
|   | 7fd27634d4 | ||
|   | ea64fc4677 | ||
|   | 376cd28e0c | ||
|   | 31c47c6468 | ||
|   | 2e34a1514c | ||
|   | dae99e839d | ||
|   | 877901ccff | ||
|   | 0fec81eef7 | ||
|   | 4dd27b3e1a | ||
|   | a06ededd46 | ||
|   | 1c687831d1 | ||
|   | 2c2750b3e1 | ||
|   | 809efa9053 | ||
|   | 4a7e9ac7f0 | ||
|   | 04f9e77149 | ||
|   | 553e7dab41 | ||
|   | 3a75cd7e92 | ||
|   | c45b5de3ea | ||
|   | 6c2b3ca206 | ||
|   | 1ff5fbfc9f | ||
|   | 929242cc26 | ||
|   | d854f82966 | ||
|   | 585858a99a | ||
|   | 95fa72c1ec | ||
|   | 59015dff8f | ||
|   | d601ce0e1e | ||
|   | 9820248115 | ||
|   | 7ff040f706 | ||
|   | f4b83c2860 | ||
|   | 082b708927 | ||
|   | 8a895e02fb | ||
|   | b878fb7b3f | ||
|   | 5c66d8df5f | ||
|   | ebd34a536d | ||
|   | f2c7169aca | ||
|   | 875d1c50b0 | ||
|   | 8c4533b704 | ||
|   | bb50a66d80 | ||
|   | e8dccd9b6a | 
							
								
								
									
										14
									
								
								.github/workflows/maven-publish.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										14
									
								
								.github/workflows/maven-publish.yml
									
									
									
									
										vendored
									
									
								
							| @@ -5,7 +5,7 @@ name: Test and Publish Package | |||||||
|  |  | ||||||
| #on: | #on: | ||||||
| #  release: | #  release: | ||||||
| #    types: [created] | #    types: [ "created" ] | ||||||
|  |  | ||||||
| on: | on: | ||||||
|   push: |   push: | ||||||
| @@ -47,15 +47,17 @@ jobs: | |||||||
|           key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} |           key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} | ||||||
|           restore-keys: | |           restore-keys: | | ||||||
|             ${{ runner.os }}-maven- |             ${{ runner.os }}-maven- | ||||||
|  |       - name: Build | ||||||
|  |         run: mvn -B -ntp clean install | ||||||
|       - name: Publish to GitHub Packages Apache Maven |       - name: Publish to GitHub Packages Apache Maven | ||||||
|         if: > |         #        if: > | ||||||
|           github.event_name != 'pull_request' && |         #          github.event_name != 'pull_request' && | ||||||
|           github.ref_name == 'main' && |         #          github.ref_name == 'main' && | ||||||
|           contains(github.event.head_commit.message, '[release]') |         #          contains(github.event.head_commit.message, 'release') | ||||||
|         run: | |         run: | | ||||||
|           git config --global user.email "koujalgi.amith@gmail.com" |           git config --global user.email "koujalgi.amith@gmail.com" | ||||||
|           git config --global user.name "amithkoujalgi" |           git config --global user.name "amithkoujalgi" | ||||||
|           mvn clean -Punit-tests release:clean release:prepare release:perform -B -Darguments="-DskipTests -Dgpg.passphrase=${{ secrets.GPG_PASSPHRASE }}" |           mvn -B -ntp -DskipTests -Pci-cd -Darguments="-DskipTests -Pci-cd" release:clean release:prepare release:perform | ||||||
|         env: |         env: | ||||||
|           MAVEN_USERNAME: ${{ secrets.OSSRH_USERNAME }} |           MAVEN_USERNAME: ${{ secrets.OSSRH_USERNAME }} | ||||||
|           MAVEN_PASSWORD: ${{ secrets.OSSRH_PASSWORD }} |           MAVEN_PASSWORD: ${{ secrets.OSSRH_PASSWORD }} | ||||||
|   | |||||||
							
								
								
									
										18
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										18
									
								
								Makefile
									
									
									
									
									
								
							| @@ -1,17 +1,13 @@ | |||||||
|  | build: | ||||||
|  | 	mvn -B clean install | ||||||
|  |  | ||||||
| ut: | ut: | ||||||
| 	mvn clean test -Punit-tests | 	mvn clean test -Punit-tests | ||||||
|  |  | ||||||
| it: | it: | ||||||
| 	mvn clean verify -Pintegration-tests | 	mvn clean verify -Pintegration-tests | ||||||
|  |  | ||||||
| build: | list-releases: | ||||||
| 	mvn -B clean test install -Punit-tests -Dgpg.passphrase="${GPG_PASSPHRASE}" -e | 	curl 'https://central.sonatype.com/api/internal/browse/component/versions?sortField=normalizedVersion&sortDirection=asc&page=0&size=12&filter=namespace%3Aio.github.amithkoujalgi%2Cname%3Aollama4j' \ | ||||||
|  |       --compressed \ | ||||||
| release: |       --silent | jq '.components[].version' | ||||||
| 	mvn clean -Punit-tests release:clean release:prepare release:perform -B |  | ||||||
|  |  | ||||||
| update-version: |  | ||||||
| 	mvn versions:set -DnewVersion=1.0.1 |  | ||||||
|  |  | ||||||
| deploy: |  | ||||||
| 	mvn clean deploy -Punit-tests -Dgpg.passphrase="$GPG_PASSPHRASE" -e |  | ||||||
							
								
								
									
										23
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										23
									
								
								README.md
									
									
									
									
									
								
							| @@ -53,34 +53,25 @@ for [Ollama](https://github.com/jmorganca/ollama/blob/main/docs/api.md) APIs. | |||||||
|  |  | ||||||
| #### Installation | #### Installation | ||||||
|  |  | ||||||
| In your Maven project, add this dependency available in: | In your Maven project, add this dependency: | ||||||
|  |  | ||||||
| - https://central.sonatype.com/artifact/io.github.amithkoujalgi/ollama4j |  | ||||||
| - [Central Repository](https://s01.oss.sonatype.org/#nexus-search;quick~ollama4j) |  | ||||||
|  |  | ||||||
| ```xml | ```xml | ||||||
|  |  | ||||||
| <dependency> | <dependency> | ||||||
|     <groupId>io.github.amithkoujalgi</groupId> |     <groupId>io.github.amithkoujalgi</groupId> | ||||||
|     <artifactId>ollama4j</artifactId> |     <artifactId>ollama4j</artifactId> | ||||||
|     <version>1.0-SNAPSHOT</version> |     <version>1.0.20</version> | ||||||
| </dependency> | </dependency> | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| You might want to include the Maven repository to pull the ollama4j library from. Include this in | [![][lib-shield]][lib] | ||||||
| your `pom.xml`: |  | ||||||
|  |  | ||||||
| ```xml | [lib]: https://central.sonatype.com/artifact/io.github.amithkoujalgi/ollama4j | ||||||
|  |  | ||||||
| <repositories> | [lib-shield]: https://img.shields.io/badge/ollama4j-get_latest_version-blue.svg?style=for-the-badge&labelColor=gray | ||||||
|     <repository> |  | ||||||
|         <id>ollama4j-from-ossrh</id> |  | ||||||
|         <url>https://s01.oss.sonatype.org/content/repositories/snapshots</url> |  | ||||||
|     </repository> |  | ||||||
| </repositories> |  | ||||||
| ``` |  | ||||||
|  |  | ||||||
| You should also include an implementation of [SL4J](https://www.slf4j.org/) logger in your `pom.xml` file. For example, | You might want to include an implementation of [SL4J](https://www.slf4j.org/) logger in your `pom.xml` file. For | ||||||
|  | example, | ||||||
|  |  | ||||||
| Use `slf4j-jdk14` implementation: | Use `slf4j-jdk14` implementation: | ||||||
|  |  | ||||||
|   | |||||||
| @@ -1,13 +1,16 @@ | |||||||
| Understanding publishing: | Understanding publishing: | ||||||
| https://dzone.com/articles/how-to-publish-artifacts-to-maven-central | https://dzone.com/articles/how-to-publish-artifacts-to-maven-central | ||||||
|  |  | ||||||
| GPG Signing setup | Reference Repo: | ||||||
|  | https://github.com/dsibilio/badge-maker/tree/main | ||||||
|  |  | ||||||
| ## GPG Setup | ## GPG Signing setup | ||||||
|  |  | ||||||
|  | ### GPG Setup | ||||||
|  |  | ||||||
| https://central.sonatype.org/publish/requirements/gpg/#listing-keys | https://central.sonatype.org/publish/requirements/gpg/#listing-keys | ||||||
|  |  | ||||||
| ### Steps | #### Steps | ||||||
|  |  | ||||||
| - Create key: `gpg --gen-key` and then list keys to verify: `gpg --list-keys` | - Create key: `gpg --gen-key` and then list keys to verify: `gpg --list-keys` | ||||||
| - Distributing Your Public Key: | - Distributing Your Public Key: | ||||||
| @@ -33,4 +36,19 @@ gpg --armor --export-secret-keys 88AA0C903A513340A0F3094326257A6F6F5F24A9 > ~/ol | |||||||
|  |  | ||||||
| https://central.sonatype.org/publish/publish-maven/ | https://central.sonatype.org/publish/publish-maven/ | ||||||
|  |  | ||||||
| ### Steps | ## List release versions | ||||||
|  |  | ||||||
|  | ```shell | ||||||
|  | curl 'https://central.sonatype.com/api/internal/browse/component/versions?sortField=normalizedVersion&sortDirection=desc&page=0&size=12&filter=namespace%3Aio.github.amithkoujalgi%2Cname%3Aollama4j' \ | ||||||
|  |   --compressed \ | ||||||
|  |   --silent | jq '.components[].version' | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | Deployment steps to test. [IGNORE THIS FOR PUBLISHING CONTEXT. THIS IS ONLY TO TEST STUFF OUT LOCALLY] | ||||||
|  |  | ||||||
|  | ```shell | ||||||
|  | # release: | ||||||
|  | mvn -B clean install deploy -Punit-tests -Dgpg.passphrase="${GPG_PASSPHRASE}" -e | ||||||
|  | #or | ||||||
|  | mvn -B clean install -Punit-tests release:clean release:prepare release:perform -Dgpg.passphrase="${GPG_PASSPHRASE}" -e | ||||||
|  | ``` | ||||||
							
								
								
									
										107
									
								
								pom.xml
									
									
									
									
									
								
							
							
						
						
									
										107
									
								
								pom.xml
									
									
									
									
									
								
							| @@ -4,7 +4,7 @@ | |||||||
|  |  | ||||||
|     <groupId>io.github.amithkoujalgi</groupId> |     <groupId>io.github.amithkoujalgi</groupId> | ||||||
|     <artifactId>ollama4j</artifactId> |     <artifactId>ollama4j</artifactId> | ||||||
|     <version>1.0.10</version> |     <version>1.0.21</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> | ||||||
| @@ -39,22 +39,11 @@ | |||||||
|         <connection>scm:git:git@github.com:amithkoujalgi/ollama4j.git</connection> |         <connection>scm:git:git@github.com:amithkoujalgi/ollama4j.git</connection> | ||||||
|         <developerConnection>scm:git:https://github.com/amithkoujalgi/ollama4j.git</developerConnection> |         <developerConnection>scm:git:https://github.com/amithkoujalgi/ollama4j.git</developerConnection> | ||||||
|         <url>https://github.com/amithkoujalgi/ollama4j</url> |         <url>https://github.com/amithkoujalgi/ollama4j</url> | ||||||
|         <tag>v1.0.10</tag> |         <tag>v1.0.21</tag> | ||||||
|     </scm> |     </scm> | ||||||
|  |  | ||||||
|     <build> |     <build> | ||||||
|         <plugins> |         <plugins> | ||||||
|             <plugin> |  | ||||||
|                 <groupId>org.sonatype.plugins</groupId> |  | ||||||
|                 <artifactId>nexus-staging-maven-plugin</artifactId> |  | ||||||
|                 <version>1.6.13</version> |  | ||||||
|                 <extensions>true</extensions> |  | ||||||
|                 <configuration> |  | ||||||
|                     <serverId>ossrh</serverId> |  | ||||||
|                     <nexusUrl>https://s01.oss.sonatype.org/</nexusUrl> |  | ||||||
|                     <autoReleaseAfterClose>true</autoReleaseAfterClose> |  | ||||||
|                 </configuration> |  | ||||||
|             </plugin> |  | ||||||
|             <plugin> |             <plugin> | ||||||
|                 <groupId>org.apache.maven.plugins</groupId> |                 <groupId>org.apache.maven.plugins</groupId> | ||||||
|                 <artifactId>maven-source-plugin</artifactId> |                 <artifactId>maven-source-plugin</artifactId> | ||||||
| @@ -81,27 +70,27 @@ | |||||||
|                     </execution> |                     </execution> | ||||||
|                 </executions> |                 </executions> | ||||||
|             </plugin> |             </plugin> | ||||||
|             <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>1.5</version> |             <!--                <version>1.5</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>--> | ||||||
|                             <!-- This is necessary for gpg to not try to use the pinentry programs --> |             <!--                            <!– This is necessary for gpg to not try to use the pinentry programs –>--> | ||||||
|                             <gpgArguments> |             <!--                            <gpgArguments>--> | ||||||
|                                 <arg>--pinentry-mode</arg> |             <!--                                <arg>--pinentry-mode</arg>--> | ||||||
|                                 <arg>loopback</arg> |             <!--                                <arg>loopback</arg>--> | ||||||
|                             </gpgArguments> |             <!--                            </gpgArguments>--> | ||||||
|                         </configuration> |             <!--                        </configuration>--> | ||||||
|                     </execution> |             <!--                    </execution>--> | ||||||
|                 </executions> |             <!--                </executions>--> | ||||||
|             </plugin> |             <!--            </plugin>--> | ||||||
|             <!-- Surefire Plugin for Unit Tests --> |             <!-- Surefire Plugin for Unit Tests --> | ||||||
|             <plugin> |             <plugin> | ||||||
|                 <groupId>org.apache.maven.plugins</groupId> |                 <groupId>org.apache.maven.plugins</groupId> | ||||||
| @@ -143,7 +132,7 @@ | |||||||
|                 <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> |                     <!--                    <goals>install</goals>--> | ||||||
|                     <tagNameFormat>v@{project.version}</tagNameFormat> |                     <tagNameFormat>v@{project.version}</tagNameFormat> | ||||||
|                 </configuration> |                 </configuration> | ||||||
|             </plugin> |             </plugin> | ||||||
| @@ -206,6 +195,9 @@ | |||||||
|                 <skipUnitTests>false</skipUnitTests> |                 <skipUnitTests>false</skipUnitTests> | ||||||
|                 <skipIntegrationTests>true</skipIntegrationTests> |                 <skipIntegrationTests>true</skipIntegrationTests> | ||||||
|             </properties> |             </properties> | ||||||
|  |             <activation> | ||||||
|  |                 <activeByDefault>true</activeByDefault> | ||||||
|  |             </activation> | ||||||
|         </profile> |         </profile> | ||||||
|         <profile> |         <profile> | ||||||
|             <id>integration-tests</id> |             <id>integration-tests</id> | ||||||
| @@ -215,6 +207,51 @@ | |||||||
|                 <skipIntegrationTests>false</skipIntegrationTests> |                 <skipIntegrationTests>false</skipIntegrationTests> | ||||||
|             </properties> |             </properties> | ||||||
|         </profile> |         </profile> | ||||||
|  |         <profile> | ||||||
|  |             <id>ci-cd</id> | ||||||
|  |             <properties> | ||||||
|  |                 <test.env>unit</test.env> | ||||||
|  |                 <skipUnitTests>true</skipUnitTests> | ||||||
|  |                 <skipIntegrationTests>true</skipIntegrationTests> | ||||||
|  |             </properties> | ||||||
|  |             <build> | ||||||
|  |                 <plugins> | ||||||
|  |                     <plugin> | ||||||
|  |                         <groupId>org.apache.maven.plugins</groupId> | ||||||
|  |                         <artifactId>maven-gpg-plugin</artifactId> | ||||||
|  |                         <version>3.1.0</version> | ||||||
|  |                         <executions> | ||||||
|  |                             <execution> | ||||||
|  |                                 <id>sign-artifacts</id> | ||||||
|  |                                 <phase>verify</phase> | ||||||
|  |                                 <goals> | ||||||
|  |                                     <goal>sign</goal> | ||||||
|  |                                 </goals> | ||||||
|  |                                 <configuration> | ||||||
|  |                                     <!-- Prevent gpg from using pinentry programs. Fixes: | ||||||
|  |                                          gpg: signing failed: Inappropriate ioctl for device --> | ||||||
|  |                                     <gpgArguments> | ||||||
|  |                                         <arg>--pinentry-mode</arg> | ||||||
|  |                                         <arg>loopback</arg> | ||||||
|  |                                     </gpgArguments> | ||||||
|  |                                 </configuration> | ||||||
|  |                             </execution> | ||||||
|  |                         </executions> | ||||||
|  |                     </plugin> | ||||||
|  |                     <plugin> | ||||||
|  |                         <groupId>org.sonatype.plugins</groupId> | ||||||
|  |                         <artifactId>nexus-staging-maven-plugin</artifactId> | ||||||
|  |                         <version>1.6.13</version> | ||||||
|  |                         <extensions>true</extensions> | ||||||
|  |                         <configuration> | ||||||
|  |                             <serverId>ossrh</serverId> | ||||||
|  |                             <nexusUrl>https://s01.oss.sonatype.org/</nexusUrl> | ||||||
|  |                             <autoReleaseAfterClose>true</autoReleaseAfterClose> | ||||||
|  |                         </configuration> | ||||||
|  |                     </plugin> | ||||||
|  |                 </plugins> | ||||||
|  |             </build> | ||||||
|  |         </profile> | ||||||
|     </profiles> |     </profiles> | ||||||
|  |  | ||||||
| </project> | </project> | ||||||
		Reference in New Issue
	
	Block a user