Skip to content

Commit

Permalink
Merge pull request #12 from czelabueno/fix/release.yaml
Browse files Browse the repository at this point in the history
update to new java package naming convention
  • Loading branch information
czelabueno authored Jan 9, 2025
2 parents 90916fc + 4308740 commit 415beac
Show file tree
Hide file tree
Showing 32 changed files with 186 additions and 139 deletions.
17 changes: 15 additions & 2 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,23 @@ name: jAI Workflow CI
on:
push:
branches:
- main
- main
paths-ignore:
- '.gitignore'
- '*.md'
- 'LICENSE'
- '.github/*.md'
- '.github/*.yml'
pull_request:
branches:
- main
- main
paths-ignore:
- '.gitignore'
- '*.md'
- 'LICENSE'
- '.github/*.md'
- '.github/*.yml'
workflow_dispatch:

jobs:
java_build:
Expand Down
44 changes: 44 additions & 0 deletions .github/workflows/javadocs.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
name: Build and publish Java Docs to GitHub Pages

on:
release:
types: [created]
workflow_dispatch:

# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
permissions:
contents: read
pages: write
id-token: write

concurrency:
group: "pages"
cancel-in-progress: false

jobs:
deploy:
runs-on: ubuntu-latest
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
steps:
- name: Checkout source code
uses: actions/checkout@v4
- name: Set up JDK 21
uses: actions/setup-java@v4
with:
java-version: '21'
distribution: 'temurin'
- name: Generate Javadoc
run: mvn -T4C compile javadoc:aggregate -DskipTests

- name: Setup Pages
uses: actions/configure-pages@v3
- name: Upload artifact
uses: actions/upload-pages-artifact@v2
with:
# Upload side folder
path: './target/site/apidocs'
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v2
31 changes: 28 additions & 3 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
@@ -1,10 +1,18 @@
name: jAI Workflow Release

on:
push:
tags:
- v0.[0-9].[0-9]+
workflow_dispatch:

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}

jobs:
release:
name: Build and deploy to Maven Central
if: github.repository == 'czelabueno/jai-workflow'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
Expand All @@ -20,10 +28,27 @@ jobs:
server-password: OSSRH_PASSWORD
gpg-private-key: ${{ secrets.GPG_PRIVATE_KEY }}
gpg-passphrase: GPG_PASSPHRASE

- name: release
run: mvn -B -U -Prelease clean deploy -DskipTests
- name: Publish to Sonatype Maven Central
run: |
mvn versions:set -DnewVersion=${GITHUB_REF#refs/tags/v}
mvn -B -U --fail-at-end -Prelease clean deploy -DskipTests
env:
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
OSSRH_USERNAME: ${{ secrets.OSSRH_USERNAME }}
OSSRH_PASSWORD: ${{ secrets.OSSRH_PASSWORD }}
create-github-release:
name: Create GitHub Release
needs: release
runs-on: ubuntu-latest
steps:
- name: Create GitHub Release
shell: bash
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
tag: ${{ github.ref_name }}
run: |
gh release create "$tag" \
--repo "${{ github.repository }}" \
--title "$tag#v" \
--generate-notes \
--latest
44 changes: 11 additions & 33 deletions .github/workflows/snapshot.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,13 @@ name: jAI Workflow Snapshot-release

on:
workflow_dispatch:
push:
branches:
- main

jobs:
snapshot-release:
if: github.repository == 'czelabueno/jai-workflow'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
Expand All @@ -15,40 +19,14 @@ jobs:
java-version: '21'
distribution: 'temurin'
cache: maven
- name: Install gpg secret key
shell: bash
run: |
# Install gpg secret key
cat <(echo -e "${{ secrets.GPG_PRIVATE_KEY }}") | gpg --batch --import
# Verify gpg secret key
gpg --list-secret-keys --keyid-format LONG
- name: Setup Maven settings
shell: bash
run: |
# Setup maven settings
echo "<settings>
<servers>
<server>
<id>ossrh</id>
<username>${{ secrets.OSSRH_USERNAME }}</username>
<password>${{ secrets.OSSRH_PASSWORD }}</password>
</server>
</servers>
<profiles>
<profile>
<id>ossrh</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<gpg.executable>gpg</gpg.executable>
<gpg.passphrase>${{ secrets.GPG_PASSPHRASE }}</gpg.passphrase>
</properties>
</profile>
</profiles>
</settings>" > ~/.m2/settings.xml
- name: Publish SNAPSHOT to Sonatype (Maven Central)
server-id: ossrh
server-username: OSSRH_USERNAME
server-password: OSSRH_PASSWORD
- name: Publish SNAPSHOT to Sonatype
run: |
mvn -B --fail-at-end \
-DskipTests -DskipITs \
clean deploy
env:
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 @@ -131,7 +131,7 @@ In **jAI Workflow**, the notion of state plays a pivotal role. Every execution o
The simplest way to use jAI Workflow in your project is with the [LangChain4j](https://docs.langchain4j.dev) integration because enables you to define custom workflows using all the features that LangChain4j offers. This integration could provide a comprehensive toolset for building advanced AI applications:
```xml
<dependency>
<groupId>com.github.czelabueno</groupId>
<groupId>io.github.czelabueno</groupId>
<artifactId>jai-workflow-langchain4j</artifactId>
<version>0.2.0</version> <!--Change to the latest version-->
</dependency>
Expand All @@ -140,7 +140,7 @@ The simplest way to use jAI Workflow in your project is with the [LangChain4j](h
If you would want to use jAI workflow without LangChain4j or with other framework, add the following dependency to your `pom.xml` file:
```xml
<dependency>
<groupId>com.github.czelabueno</groupId>
<groupId>io.github.czelabueno</groupId>
<artifactId>jai-workflow-core</artifactId>
<version>0.2.0</version> <!--Change to the latest version-->
</dependency>
Expand Down
2 changes: 1 addition & 1 deletion jai-workflow-core/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.github.czelabueno</groupId>
<groupId>io.github.czelabueno</groupId>
<artifactId>jai-workflow-parent</artifactId>
<version>0.2.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
package com.github.czelabueno.jai.workflow;

import com.github.czelabueno.jai.workflow.node.Conditional;
import com.github.czelabueno.jai.workflow.node.Node;
import com.github.czelabueno.jai.workflow.transition.Transition;
import com.github.czelabueno.jai.workflow.graph.GraphImageGenerator;
import com.github.czelabueno.jai.workflow.graph.graphviz.GraphvizImageGenerator;
import com.github.czelabueno.jai.workflow.transition.TransitionState;
package io.github.czelabueno.jai.workflow;

import io.github.czelabueno.jai.workflow.node.Conditional;
import io.github.czelabueno.jai.workflow.node.Node;
import io.github.czelabueno.jai.workflow.transition.Transition;
import io.github.czelabueno.jai.workflow.graph.GraphImageGenerator;
import io.github.czelabueno.jai.workflow.graph.graphviz.GraphvizImageGenerator;
import io.github.czelabueno.jai.workflow.transition.TransitionState;
import lombok.Builder;
import lombok.NonNull;
import lombok.Singular;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
package com.github.czelabueno.jai.workflow;
package io.github.czelabueno.jai.workflow;

import com.github.czelabueno.jai.workflow.node.Conditional;
import com.github.czelabueno.jai.workflow.node.Node;
import com.github.czelabueno.jai.workflow.transition.Transition;
import io.github.czelabueno.jai.workflow.node.Conditional;
import io.github.czelabueno.jai.workflow.node.Node;
import io.github.czelabueno.jai.workflow.transition.Transition;

import java.io.IOException;
import java.util.List;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package com.github.czelabueno.jai.workflow;
package io.github.czelabueno.jai.workflow;

import com.github.czelabueno.jai.workflow.transition.TransitionState;
import io.github.czelabueno.jai.workflow.transition.TransitionState;

/**
* Enum representing the possible states in a workflow.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package com.github.czelabueno.jai.workflow.graph;
package io.github.czelabueno.jai.workflow.graph;

import com.github.czelabueno.jai.workflow.transition.Transition;
import io.github.czelabueno.jai.workflow.transition.Transition;
import lombok.NonNull;

import java.io.IOException;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
package com.github.czelabueno.jai.workflow.graph.graphviz;
package io.github.czelabueno.jai.workflow.graph.graphviz;

import com.github.czelabueno.jai.workflow.WorkflowStateName;
import com.github.czelabueno.jai.workflow.node.Node;
import com.github.czelabueno.jai.workflow.transition.Transition;
import com.github.czelabueno.jai.workflow.graph.GraphImageGenerator;
import io.github.czelabueno.jai.workflow.WorkflowStateName;
import io.github.czelabueno.jai.workflow.node.Node;
import io.github.czelabueno.jai.workflow.transition.Transition;
import io.github.czelabueno.jai.workflow.graph.GraphImageGenerator;
import guru.nidi.graphviz.engine.*;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package com.github.czelabueno.jai.workflow.node;
package io.github.czelabueno.jai.workflow.node;

import com.github.czelabueno.jai.workflow.transition.TransitionState;
import io.github.czelabueno.jai.workflow.transition.TransitionState;
import lombok.NonNull;

import java.util.Objects;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package com.github.czelabueno.jai.workflow.node;
package io.github.czelabueno.jai.workflow.node;

import com.github.czelabueno.jai.workflow.transition.TransitionState;
import io.github.czelabueno.jai.workflow.transition.TransitionState;
import lombok.Getter;
import lombok.NonNull;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package com.github.czelabueno.jai.workflow.transition;
package io.github.czelabueno.jai.workflow.transition;

import com.github.czelabueno.jai.workflow.node.Node;
import com.github.czelabueno.jai.workflow.WorkflowStateName;
import io.github.czelabueno.jai.workflow.node.Node;
import io.github.czelabueno.jai.workflow.WorkflowStateName;
import lombok.NonNull;

/**
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.github.czelabueno.jai.workflow.transition;
package io.github.czelabueno.jai.workflow.transition;

/**
* Marker interface representing a state in a workflow transition.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package com.github.czelabueno.jai.workflow;
package io.github.czelabueno.jai.workflow;

import com.github.czelabueno.jai.workflow.node.Conditional;
import com.github.czelabueno.jai.workflow.node.Node;
import io.github.czelabueno.jai.workflow.node.Conditional;
import io.github.czelabueno.jai.workflow.node.Node;
import lombok.SneakyThrows;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package com.github.czelabueno.jai.workflow.graph.graphviz;
package io.github.czelabueno.jai.workflow.graph.graphviz;

import com.github.czelabueno.jai.workflow.node.Node;
import com.github.czelabueno.jai.workflow.transition.Transition;
import io.github.czelabueno.jai.workflow.node.Node;
import io.github.czelabueno.jai.workflow.transition.Transition;
import lombok.SneakyThrows;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.github.czelabueno.jai.workflow.node;
package io.github.czelabueno.jai.workflow.node;

import org.junit.jupiter.api.Test;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.github.czelabueno.jai.workflow.node;
package io.github.czelabueno.jai.workflow.node;

import org.junit.jupiter.api.Test;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,9 @@
package com.github.czelabueno.jai.workflow.transition;
package io.github.czelabueno.jai.workflow.transition;

import com.github.czelabueno.jai.workflow.WorkflowStateName;
import com.github.czelabueno.jai.workflow.node.Node;
import io.github.czelabueno.jai.workflow.WorkflowStateName;
import io.github.czelabueno.jai.workflow.node.Node;
import org.junit.jupiter.api.Test;

import java.util.Arrays;
import java.util.List;

import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Assertions.assertThatExceptionOfType;

Expand Down
4 changes: 2 additions & 2 deletions jai-workflow-langchain4j/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.github.czelabueno</groupId>
<groupId>io.github.czelabueno</groupId>
<artifactId>jai-workflow-parent</artifactId>
<version>0.2.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
Expand All @@ -17,7 +17,7 @@

<dependencies>
<dependency>
<groupId>com.github.czelabueno</groupId>
<groupId>io.github.czelabueno</groupId>
<artifactId>jai-workflow-core</artifactId>
<version>${project.version}</version>
</dependency>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.github.czelabueno.jai.workflow.langchain4j;
package io.github.czelabueno.jai.workflow.langchain4j;

import lombok.Data;
import reactor.core.publisher.Flux;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.github.czelabueno.jai.workflow.langchain4j;
package io.github.czelabueno.jai.workflow.langchain4j;

import dev.langchain4j.data.message.AiMessage;
import dev.langchain4j.data.message.UserMessage;
Expand Down
Loading

0 comments on commit 415beac

Please sign in to comment.