Skip to content

Commit c0ff89c

Browse files
committed
feat: initial public SDK release
0 parents  commit c0ff89c

File tree

620 files changed

+274281
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

620 files changed

+274281
-0
lines changed

.github/CODEOWNERS

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
* @anduril/lattice-sdk-maintainers

.github/workflows/commit-lint.yml

+21
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
name: "Lint commit"
2+
3+
on:
4+
pull_request_target:
5+
types:
6+
- opened
7+
- edited
8+
- synchronize
9+
- reopened
10+
permissions:
11+
pull-requests: read
12+
jobs:
13+
main:
14+
name: Validate PR title
15+
runs-on: ubuntu-latest
16+
steps:
17+
- uses: amannn/action-semantic-pull-request@v5
18+
env:
19+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
20+
with:
21+
requireScope: false

.github/workflows/release.yml

+48
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
name: Release
2+
on:
3+
push:
4+
branches:
5+
- master
6+
7+
permissions:
8+
contents: read
9+
10+
# Only allow one release workflow to execute at a time, since each release
11+
# workflow uses shared resources (git tags, package registries)
12+
concurrency:
13+
group: ${{ github.workflow }}
14+
15+
jobs:
16+
release:
17+
name: Release
18+
runs-on: ubuntu-latest
19+
permissions:
20+
contents: write # to be able to publish a GitHub release
21+
issues: write # to be able to comment on released issues
22+
pull-requests: write # to be able to comment on released pull requests
23+
steps:
24+
- name: Checkout
25+
uses: actions/checkout@v4
26+
with:
27+
fetch-depth: 0
28+
- name: Set up JDK 17
29+
uses: actions/setup-java@v4
30+
with:
31+
java-version: '17'
32+
distribution: 'temurin'
33+
server-id: central # Value of the distributionManagement/repository/id field of the pom.xml
34+
server-username: MAVEN_USERNAME # env variable for username in deploy
35+
server-password: MAVEN_CENTRAL_TOKEN # env variable for token in deploy
36+
gpg-private-key: ${{ secrets.MAVEN_GPG_PRIVATE_KEY }} # Value of the GPG private key to import
37+
gpg-passphrase: MAVEN_GPG_PASSPHRASE # env variable for GPG private key passphrase
38+
- name: Semantic Release
39+
uses: cycjimmy/semantic-release-action@v4
40+
with:
41+
semantic_version: 24.2.0
42+
extra_plugins: |
43+
@terrestris/maven-semantic-release@3.1.0
44+
env:
45+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
46+
MAVEN_USERNAME: ${{ secrets.MAVEN_USERNAME }}
47+
MAVEN_CENTRAL_TOKEN: ${{ secrets.MAVEN_CENTRAL_TOKEN }}
48+
MAVEN_GPG_PASSPHRASE: ${{ secrets.MAVEN_GPG_PASSPHRASE }}

.gitignore

+18
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
target/
2+
bin/
3+
pom.xml.tag
4+
pom.xml.releaseBackup
5+
pom.xml.versionsBackup
6+
pom.xml.next
7+
release.properties
8+
dependency-reduced-pom.xml
9+
buildNumber.properties
10+
.mvn/timing.properties
11+
# https://github.com/takari/maven-wrapper#usage-without-binary-jar
12+
.mvn/wrapper/maven-wrapper.jar
13+
14+
# Eclipse m2e generated files
15+
# Eclipse Core
16+
.project
17+
# JDT-specific (Eclipse Java Development Tools)
18+
.classpath

.releaserc.yml

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
plugins: [
2+
"@semantic-release/commit-analyzer",
3+
'@semantic-release/release-notes-generator',
4+
"@semantic-release/github",
5+
"@terrestris/maven-semantic-release"
6+
]

LICENSE.md

+188
Large diffs are not rendered by default.

README.md

+44
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
# Lattice SDK Java
2+
3+
[![Version](https://img.shields.io/maven-central/v/com.anduril/anduril-sdk-java)](https://mvnrepository.com/artifact/com.anduril/anduril-sdk-java)
4+
5+
The official [Anduril](https://www.anduril.com/) Lattice SDK for Java.
6+
7+
## Documentation
8+
9+
See the documentation for [Lattice Java SDK](https://docs.anduril.com/sdks/java).
10+
11+
## Requirements
12+
13+
This repository is tested against Java 1.8 or later.
14+
15+
## Installation
16+
17+
⚠️ **Versioning**
18+
19+
Please check the [Maven Central repository](https://mvnrepository.com/artifact/com.anduril/anduril-sdk-java) for the latest version of the Lattice-SDK. The code samples below reference a stale version the SDK.
20+
21+
### Gradle users
22+
23+
To add the SDK as a dependency, please add the following to your project's `build.gradle` file
24+
25+
```gradle
26+
dependencies {
27+
implementation 'com.anduril:anduril-sdk-java:1.1.4'
28+
}
29+
```
30+
31+
### Maven users
32+
33+
To add the SDK as a dependency, please add the following to your project's `pom.xml` file:
34+
35+
```xml
36+
<dependency>
37+
<groupId>com.anduril</groupId>
38+
<artifactId>anduril-sdk-java</artifactId>
39+
<version>1.1.4</version>
40+
</dependency>
41+
```
42+
## Support
43+
44+
For support with this library please [file an issue](https://github.com/anduril/lattice-sdk-java/issues/new) or reach out to your Anduril representative.

SECURITY.md

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# Security Policy
2+
3+
## Reporting a Vulnerability
4+
5+
Please report any security issues to the Anduril Information Security team using the email disclosures@anduril.com. Additional information including our pgp key can be found in the [security.txt page](https://www.anduril.com/.well-known/security.txt) of our website.

pom.xml

+134
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,134 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<project xmlns="http://maven.apache.org/POM/4.0.0"
3+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4+
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
5+
<modelVersion>4.0.0</modelVersion>
6+
7+
<groupId>com.anduril</groupId>
8+
<artifactId>lattice-sdk</artifactId>
9+
<version>0.0.0</version>
10+
11+
<name>Anduril Lattice SDK</name>
12+
<description>The Lattice SDK vended in Java</description>
13+
<url>http://www.anduril.com</url>
14+
15+
<developers>
16+
<developer>
17+
<name>Anduril Industries Inc.</name>
18+
<organization>Anduril Industries Inc.</organization>
19+
<organizationUrl>http://www.anduril.com</organizationUrl>
20+
</developer>
21+
</developers>
22+
23+
<licenses>
24+
<license>
25+
<name>The Apache Software License, Version 2.0</name>
26+
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
27+
</license>
28+
</licenses>
29+
30+
<scm>
31+
<connection>scm:git:https://github.com/anduril/lattice-sdk-java.git</connection>
32+
<developerConnection>scm:git:ssh://git@github.com/anduril/lattice-sdk-java.git</developerConnection>
33+
<url>https://github.com/anduril/lattice-sdk-java</url>
34+
</scm>
35+
36+
<dependencies>
37+
<!-- https://mvnrepository.com/artifact/io.grpc/grpc-netty-shaded -->
38+
<dependency>
39+
<groupId>io.grpc</groupId>
40+
<artifactId>grpc-netty-shaded</artifactId>
41+
<version>1.65.1</version>
42+
</dependency>
43+
<!-- https://mvnrepository.com/artifact/io.grpc/grpc-stub -->
44+
<dependency>
45+
<groupId>io.grpc</groupId>
46+
<artifactId>grpc-stub</artifactId>
47+
<version>1.65.1</version>
48+
</dependency>
49+
<!-- https://mvnrepository.com/artifact/io.grpc/grpc-protobuf -->
50+
<dependency>
51+
<groupId>io.grpc</groupId>
52+
<artifactId>grpc-protobuf</artifactId>
53+
<version>1.65.1</version>
54+
</dependency>
55+
<!-- https://mvnrepository.com/artifact/javax.annotation/javax.annotation-api -->
56+
<dependency>
57+
<groupId>javax.annotation</groupId>
58+
<artifactId>javax.annotation-api</artifactId>
59+
<version>1.3.2</version>
60+
</dependency>
61+
</dependencies>
62+
63+
<build>
64+
<sourceDirectory>src</sourceDirectory>
65+
<plugins>
66+
<plugin>
67+
<groupId>org.apache.maven.plugins</groupId>
68+
<artifactId>maven-compiler-plugin</artifactId>
69+
<version>3.8.1</version>
70+
<configuration>
71+
<source>1.8</source>
72+
<target>1.8</target>
73+
</configuration>
74+
</plugin>
75+
<plugin>
76+
<groupId>org.apache.maven.plugins</groupId>
77+
<artifactId>maven-javadoc-plugin</artifactId>
78+
<version>3.2.0</version>
79+
<executions>
80+
<execution>
81+
<id>attach-javadocs</id>
82+
<goals>
83+
<goal>jar</goal>
84+
</goals>
85+
</execution>
86+
</executions>
87+
</plugin>
88+
<plugin>
89+
<groupId>org.apache.maven.plugins</groupId>
90+
<artifactId>maven-source-plugin</artifactId>
91+
<version>3.2.1</version>
92+
<executions>
93+
<execution>
94+
<id>attach-sources</id>
95+
<goals>
96+
<goal>jar</goal>
97+
</goals>
98+
</execution>
99+
</executions>
100+
</plugin>
101+
<plugin>
102+
<groupId>org.sonatype.central</groupId>
103+
<artifactId>central-publishing-maven-plugin</artifactId>
104+
<version>0.6.0</version>
105+
<extensions>true</extensions>
106+
<configuration>
107+
<publishingServerId>central</publishingServerId>
108+
</configuration>
109+
</plugin>
110+
<plugin>
111+
<groupId>org.apache.maven.plugins</groupId>
112+
<artifactId>maven-gpg-plugin</artifactId>
113+
<version>3.2.7</version>
114+
<executions>
115+
<execution>
116+
<id>sign-artifacts</id>
117+
<phase>verify</phase>
118+
<goals>
119+
<goal>sign</goal>
120+
</goals>
121+
</execution>
122+
</executions>
123+
<configuration>
124+
<!-- Prevent gpg from using pinentry programs -->
125+
<gpgArguments>
126+
<arg>--pinentry-mode</arg>
127+
<arg>loopback</arg>
128+
</gpgArguments>
129+
</configuration>
130+
</plugin>
131+
</plugins>
132+
</build>
133+
134+
</project>

0 commit comments

Comments
 (0)