Skip to content

Commit

Permalink
Automate release (#562)
Browse files Browse the repository at this point in the history
  • Loading branch information
langchain4j committed Jan 30, 2024
1 parent 0eeb034 commit a8ad9e4
Show file tree
Hide file tree
Showing 83 changed files with 498 additions and 153 deletions.
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ Please provide a relevant code snippets to reproduce this bug.
A clear and concise description of what you expected to happen.

**Please complete the following information:**
- LangChain4j version: e.g. 0.25.0
- LangChain4j version: e.g. 0.26.0
- Java version: e.g. 11
- Spring Boot version (if applicable): e.g. 2.7.14

Expand Down
31 changes: 31 additions & 0 deletions .github/workflows/release-1-core-and-parent.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: release_1_core_and_parent

on:
workflow_dispatch:

jobs:

release_1_core_and_parent:
runs-on: ubuntu-latest
steps:

- uses: actions/checkout@v4

- name: Set up JDK 8
uses: actions/setup-java@v4
with:
java-version: '8'
distribution: 'temurin'
cache: maven
server-id: ossrh
server-username: OSSRH_USERNAME
server-password: OSSRH_PASSWORD
gpg-private-key: ${{ secrets.GPG_PRIVATE_KEY }}
gpg-passphrase: GPG_PASSPHRASE

- name: release_1_core_and_parent
run: mvn -B -U --fail-at-end -Psign -pl langchain4j-core,langchain4j-parent clean deploy
env:
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
OSSRH_USERNAME: ${{ secrets.OSSRH_USERNAME }}
OSSRH_PASSWORD: ${{ secrets.OSSRH_PASSWORD }}
33 changes: 33 additions & 0 deletions .github/workflows/release-2-open-ai.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
name: release_2_open_ai

on:
workflow_dispatch:

jobs:

release_2_open_ai:
runs-on: ubuntu-latest
steps:

- uses: actions/checkout@v4

- name: Set up JDK 8
uses: actions/setup-java@v4
with:
java-version: '8'
distribution: 'temurin'
cache: maven
server-id: ossrh
server-username: OSSRH_USERNAME
server-password: OSSRH_PASSWORD
gpg-private-key: ${{ secrets.GPG_PRIVATE_KEY }}
gpg-passphrase: GPG_PASSPHRASE

- name: release_2_open_ai
run: mvn -B -U --fail-at-end -Psign -pl langchain4j-open-ai clean deploy
env:
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
OPENAI_BASE_URL: ${{ secrets.OPENAI_BASE_URL }}
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
OSSRH_USERNAME: ${{ secrets.OSSRH_USERNAME }}
OSSRH_PASSWORD: ${{ secrets.OSSRH_PASSWORD }}
33 changes: 33 additions & 0 deletions .github/workflows/release-3-main-module.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
name: release_3_main_module

on:
workflow_dispatch:

jobs:

release_3_main_module:
runs-on: ubuntu-latest
steps:

- uses: actions/checkout@v4

- name: Set up JDK 8
uses: actions/setup-java@v4
with:
java-version: '8'
distribution: 'temurin'
cache: maven
server-id: ossrh
server-username: OSSRH_USERNAME
server-password: OSSRH_PASSWORD
gpg-private-key: ${{ secrets.GPG_PRIVATE_KEY }}
gpg-passphrase: GPG_PASSPHRASE

- name: release_3_main_module
run: mvn -B -U --fail-at-end -Psign -pl langchain4j clean deploy
env:
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
OPENAI_BASE_URL: ${{ secrets.OPENAI_BASE_URL }}
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
OSSRH_USERNAME: ${{ secrets.OSSRH_USERNAME }}
OSSRH_PASSWORD: ${{ secrets.OSSRH_PASSWORD }}
53 changes: 53 additions & 0 deletions .github/workflows/release-4-rest.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
name: release_4_rest

on:
workflow_dispatch:

jobs:

release_4_rest:
permissions:
contents: 'read'
id-token: 'write'
runs-on: ubuntu-latest
steps:

- uses: actions/checkout@v4

- name: Set up JDK 8
uses: actions/setup-java@v4
with:
java-version: '8'
distribution: 'temurin'
cache: maven
server-id: ossrh
server-username: OSSRH_USERNAME
server-password: OSSRH_PASSWORD
gpg-private-key: ${{ secrets.GPG_PRIVATE_KEY }}
gpg-passphrase: GPG_PASSPHRASE

- name: Authenticate to Google Cloud
uses: 'google-github-actions/auth@v2'
with:
project_id: ${{ secrets.GCP_PROJECT_ID }}
credentials_json: ${{ secrets.GCP_CREDENTIALS_JSON }}

- name: release_4_rest
run: mvn -B -U --fail-at-end -Psign clean deploy -DskipOllamaITs=true -DskipVearchITs=true -DskipVertexAiGeminiITs=true -pl !langchain4j-core,!langchain4j-parent,!langchain4j-open-ai,!langchain4j,!langchain4j-local-ai,!code-execution-engines/langchain4j-code-execution-engine-graalvm-polyglot,!langchain4j-neo4j,!langchain4j-opensearch
env:
AZURE_OPENAI_ENDPOINT: ${{ secrets.AZURE_OPENAI_ENDPOINT }}
AZURE_OPENAI_KEY: ${{ secrets.AZURE_OPENAI_KEY }}
COHERE_API_KEY: ${{ secrets.COHERE_API_KEY }}
GCP_CREDENTIALS_JSON: ${{ secrets.GCP_CREDENTIALS_JSON }}
GCP_LOCATION: ${{ secrets.GCP_LOCATION }}
GCP_PROJECT_ID: ${{ secrets.GCP_PROJECT_ID }}
GCP_VERTEXAI_ENDPOINT: ${{ secrets.GCP_VERTEXAI_ENDPOINT }}
HF_API_KEY: ${{ secrets.HF_API_KEY }}
MILVUS_API_KEY: ${{ secrets.MILVUS_API_KEY }}
MISTRAL_AI_API_KEY: ${{ secrets.MISTRAL_AI_API_KEY }}
PINECONE_API_KEY: ${{ secrets.PINECONE_API_KEY }}
WEAVIATE_API_KEY: ${{ secrets.WEAVIATE_API_KEY }}
WEAVIATE_HOST: ${{ secrets.WEAVIATE_HOST }}
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
OSSRH_USERNAME: ${{ secrets.OSSRH_USERNAME }}
OSSRH_PASSWORD: ${{ secrets.OSSRH_PASSWORD }}
36 changes: 36 additions & 0 deletions .github/workflows/release-5-local-ai.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
name: release_5_local_ai

on:
workflow_dispatch:

jobs:

release_5_local_ai:
runs-on: ubuntu-latest
steps:

- uses: actions/checkout@v4

- name: Set up JDK 8
uses: actions/setup-java@v4
with:
java-version: '8'
distribution: 'temurin'
cache: maven
server-id: ossrh
server-username: OSSRH_USERNAME
server-password: OSSRH_PASSWORD
gpg-private-key: ${{ secrets.GPG_PRIVATE_KEY }}
gpg-passphrase: GPG_PASSPHRASE

- name: Setup Testcontainers Cloud Client
uses: atomicjar/testcontainers-cloud-setup-action@v1
with:
token: ${{ secrets.TC_CLOUD_TOKEN }}

- name: release_5_local_ai
run: mvn -B -U --fail-at-end -Psign clean deploy -pl langchain4j-local-ai
env:
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
OSSRH_USERNAME: ${{ secrets.OSSRH_USERNAME }}
OSSRH_PASSWORD: ${{ secrets.OSSRH_PASSWORD }}
31 changes: 31 additions & 0 deletions .github/workflows/release-6-opensearch.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: release_6_opensearch

on:
workflow_dispatch:

jobs:

release_6_opensearch:
runs-on: ubuntu-latest
steps:

- uses: actions/checkout@v4

- name: Set up JDK 11
uses: actions/setup-java@v4
with:
java-version: '11'
distribution: 'temurin'
cache: maven
server-id: ossrh
server-username: OSSRH_USERNAME
server-password: OSSRH_PASSWORD
gpg-private-key: ${{ secrets.GPG_PRIVATE_KEY }}
gpg-passphrase: GPG_PASSPHRASE

- name: release_6_opensearch
run: mvn -B -U --fail-at-end -Psign clean deploy -pl langchain4j-opensearch
env:
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
OSSRH_USERNAME: ${{ secrets.OSSRH_USERNAME }}
OSSRH_PASSWORD: ${{ secrets.OSSRH_PASSWORD }}
31 changes: 31 additions & 0 deletions .github/workflows/release-7-neo4j.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: release_7_neo4j

on:
workflow_dispatch:

jobs:

release_7_neo4j:
runs-on: ubuntu-latest
steps:

- uses: actions/checkout@v4

- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
cache: maven
server-id: ossrh
server-username: OSSRH_USERNAME
server-password: OSSRH_PASSWORD
gpg-private-key: ${{ secrets.GPG_PRIVATE_KEY }}
gpg-passphrase: GPG_PASSPHRASE

- name: release_7_neo4j
run: mvn -B -U --fail-at-end -Psign clean deploy -pl langchain4j-neo4j
env:
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
OSSRH_USERNAME: ${{ secrets.OSSRH_USERNAME }}
OSSRH_PASSWORD: ${{ secrets.OSSRH_PASSWORD }}
33 changes: 33 additions & 0 deletions .github/workflows/release-8-graalvm.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
name: release_8_graalvm

on:
workflow_dispatch:

jobs:

release_8_graalvm:
runs-on: ubuntu-latest
steps:

- uses: actions/checkout@v4

- name: Set up JDK 21
uses: actions/setup-java@v4
with:
java-version: '21'
distribution: 'temurin'
cache: maven
server-id: ossrh
server-username: OSSRH_USERNAME
server-password: OSSRH_PASSWORD
gpg-private-key: ${{ secrets.GPG_PRIVATE_KEY }}
gpg-passphrase: GPG_PASSPHRASE

- name: release_8_graalvm
run: mvn -B -U --fail-at-end -Psign clean deploy -pl code-execution-engines/langchain4j-code-execution-engine-graalvm-polyglot
env:
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
OPENAI_BASE_URL: ${{ secrets.OPENAI_BASE_URL }}
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
OSSRH_USERNAME: ${{ secrets.OSSRH_USERNAME }}
OSSRH_PASSWORD: ${{ secrets.OSSRH_PASSWORD }}
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -222,12 +222,12 @@ See example [here](https://github.com/langchain4j/langchain4j-examples/blob/main
<dependency>
<groupId>dev.langchain4j</groupId>
<artifactId>langchain4j-open-ai</artifactId>
<version>0.25.0</version>
<version>0.26.0</version>
</dependency>
```
- Gradle:
```
implementation 'dev.langchain4j:langchain4j-open-ai:0.25.0'
implementation 'dev.langchain4j:langchain4j-open-ai:0.26.0'
```

2. Import your OpenAI API key:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<parent>
<groupId>dev.langchain4j</groupId>
<artifactId>langchain4j-parent</artifactId>
<version>0.26.0-SNAPSHOT</version>
<version>0.26.0</version>
<relativePath>../../langchain4j-parent/pom.xml</relativePath>
</parent>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,12 @@

class GraalVmJavaScriptExecutionToolIT {

OpenAiChatModel model = OpenAiChatModel.builder()
.baseUrl(System.getenv("OPENAI_BASE_URL"))
.apiKey(System.getenv("OPENAI_API_KEY"))
.organizationId(System.getenv("OPENAI_ORGANIZATION_ID"))
.build();

interface Assistant {

String chat(String userMessage);
Expand All @@ -21,7 +27,7 @@ public void should_execute_tool() {
GraalVmJavaScriptExecutionTool tool = spy(new GraalVmJavaScriptExecutionTool());

Assistant assistant = AiServices.builder(Assistant.class)
.chatLanguageModel(OpenAiChatModel.withApiKey(System.getenv("OPENAI_API_KEY")))
.chatLanguageModel(model)
.tools(tool)
.chatMemory(MessageWindowChatMemory.withMaxMessages(10))
.build();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,12 @@

class GraalVmPythonExecutionToolIT {

OpenAiChatModel model = OpenAiChatModel.builder()
.baseUrl(System.getenv("OPENAI_BASE_URL"))
.apiKey(System.getenv("OPENAI_API_KEY"))
.organizationId(System.getenv("OPENAI_ORGANIZATION_ID"))
.build();

interface Assistant {

String chat(String userMessage);
Expand All @@ -21,7 +27,7 @@ public void should_execute_tool() {
GraalVmPythonExecutionTool tool = spy(new GraalVmPythonExecutionTool());

Assistant assistant = AiServices.builder(Assistant.class)
.chatLanguageModel(OpenAiChatModel.withApiKey(System.getenv("OPENAI_API_KEY")))
.chatLanguageModel(model)
.tools(tool)
.chatMemory(MessageWindowChatMemory.withMaxMessages(10))
.build();
Expand Down
2 changes: 1 addition & 1 deletion docs/docs/get-started.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ java --version
:::
![Java](https://img.shields.io/badge/Java-8_+-blue.svg?style=for-the-badge&labelColor=gray)

Latest version of LangChain4j: 0.25.0
Latest version of LangChain4j: 0.26.0

![Maven Central](https://img.shields.io/maven-central/v/dev.langchain4j/langchain4j?style=for-the-badge&labelColor=gray)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<parent>
<groupId>dev.langchain4j</groupId>
<artifactId>langchain4j-parent</artifactId>
<version>0.26.0-SNAPSHOT</version>
<version>0.26.0</version>
<relativePath>../../langchain4j-parent/pom.xml</relativePath>
</parent>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<parent>
<groupId>dev.langchain4j</groupId>
<artifactId>langchain4j-parent</artifactId>
<version>0.26.0-SNAPSHOT</version>
<version>0.26.0</version>
<relativePath>../../langchain4j-parent/pom.xml</relativePath>
</parent>

Expand Down

0 comments on commit a8ad9e4

Please sign in to comment.