Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .mise.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,4 @@
golangci-lint = "2.5.0"
gradle = "8.14.1"
java = "temurin-11.0.28+6"
maven = "3.9.11"
3 changes: 0 additions & 3 deletions pkg/cmd/pulumi-language-java/language_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -128,7 +128,6 @@ func TestLanguage(t *testing.T) {
require.NoError(t, err)

for _, tt := range tests.Tests {
tt := tt
t.Run(tt, func(t *testing.T) {
t.Parallel()

Expand Down Expand Up @@ -187,7 +186,6 @@ var expectedFailures = map[string]string{
"l2-component-property-deps": "compilation error",
"l2-parameterized-resource": "compilation error",
"l2-explicit-providers": "should have 6 item(s), but has 7",
"l2-invoke-scalar": "exception at runtime",
"l3-component-simple": "compilation error",
"l1-builtin-cwd": "test failing",
"l1-stack-reference": "test failing",
Expand Down Expand Up @@ -234,7 +232,6 @@ var expectedFailures = map[string]string{
"l2-ref-ref": "test failing",
"l2-invoke-dependencies": "test failing",
"l2-destroy": "test failing",
"l2-invoke-scalars": "not implemented",
}

// runTestingHost boots up a new instance of the language conformance test runner, `pulumi-test-language`, as well as a
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
name: l2-invoke-scalar
runtime: java
Original file line number Diff line number Diff line change
@@ -0,0 +1,99 @@
<?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">
<modelVersion>4.0.0</modelVersion>

<groupId>com.pulumi</groupId>
<artifactId>l2-invoke-scalar</artifactId>
<version>1.0-SNAPSHOT</version>

<properties>
<encoding>UTF-8</encoding>
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
<maven.compiler.release>11</maven.compiler.release>
<mainClass>generated_program.App</mainClass>
<mainArgs/>
</properties>

<repositories>
<repository>
<id>repository-0</id>
<url>REPOSITORY</url>
</repository>
</repositories>

<dependencies>
<dependency>
<groupId>com.pulumi</groupId>
<artifactId>pulumi</artifactId>
<version>CORE.VERSION</version>
</dependency>
<dependency>
<groupId>com.pulumi</groupId>
<artifactId>simple-invoke-with-scalar-return</artifactId>
<version>17.0.0</version>
</dependency>
</dependencies>

<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.2.2</version>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<mainClass>${mainClass}</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>3.4.2</version>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<mainClass>${mainClass}</mainClass>
</manifest>
</archive>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
<executions>
<execution>
<id>make-my-jar-with-dependencies</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>3.1.0</version>
<configuration>
<mainClass>${mainClass}</mainClass>
<commandlineArgs>${mainArgs}</commandlineArgs>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-wrapper-plugin</artifactId>
<version>3.1.1</version>
<configuration>
<mavenVersion>3.8.5</mavenVersion>
</configuration>
</plugin>
</plugins>
</build>
</project>
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.simpleinvokewithscalarreturn.SimpleinvokewithscalarreturnFunctions;
import com.pulumi.simpleinvokewithscalarreturn.inputs.MyInvokeScalarArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}

public static void stack(Context ctx) {
ctx.export("scalar", SimpleinvokewithscalarreturnFunctions.myInvokeScalar(MyInvokeScalarArgs.builder()
.value("goodbye")
.build()));
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
name: l2-invoke-scalars
runtime: java
Original file line number Diff line number Diff line change
@@ -0,0 +1,99 @@
<?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">
<modelVersion>4.0.0</modelVersion>

<groupId>com.pulumi</groupId>
<artifactId>l2-invoke-scalars</artifactId>
<version>1.0-SNAPSHOT</version>

<properties>
<encoding>UTF-8</encoding>
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
<maven.compiler.release>11</maven.compiler.release>
<mainClass>generated_program.App</mainClass>
<mainArgs/>
</properties>

<repositories>
<repository>
<id>repository-0</id>
<url>REPOSITORY</url>
</repository>
</repositories>

<dependencies>
<dependency>
<groupId>com.pulumi</groupId>
<artifactId>pulumi</artifactId>
<version>CORE.VERSION</version>
</dependency>
<dependency>
<groupId>com.pulumi</groupId>
<artifactId>scalar-returns</artifactId>
<version>21.0.0</version>
</dependency>
</dependencies>

<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.2.2</version>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<mainClass>${mainClass}</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>3.4.2</version>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<mainClass>${mainClass}</mainClass>
</manifest>
</archive>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
<executions>
<execution>
<id>make-my-jar-with-dependencies</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>3.1.0</version>
<configuration>
<mainClass>${mainClass}</mainClass>
<commandlineArgs>${mainArgs}</commandlineArgs>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-wrapper-plugin</artifactId>
<version>3.1.1</version>
<configuration>
<mavenVersion>3.8.5</mavenVersion>
</configuration>
</plugin>
</plugins>
</build>
</project>
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.scalarreturns.ScalarreturnsFunctions;
import com.pulumi.scalarreturns.inputs.InvokeSecretArgs;
import com.pulumi.scalarreturns.inputs.InvokeArrayArgs;
import com.pulumi.scalarreturns.inputs.InvokeMapArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}

public static void stack(Context ctx) {
ctx.export("secret", ScalarreturnsFunctions.invokeSecret(InvokeSecretArgs.builder()
.value("goodbye")
.build()));
ctx.export("array", ScalarreturnsFunctions.invokeArray(InvokeArrayArgs.builder()
.value("the word")
.build()));
ctx.export("map", ScalarreturnsFunctions.invokeMap(InvokeMapArgs.builder()
.value("hello")
.build()));
ctx.export("secretMap", ScalarreturnsFunctions.invokeMap(InvokeMapArgs.builder()
.value("secret")
.build()));
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -28,12 +28,15 @@ public static CompletableFuture<DynListToDynResult> dynListToDynPlain(DynListToD
return dynListToDynPlain(args, InvokeOptions.Empty);
}
public static Output<DynListToDynResult> dynListToDyn(DynListToDynArgs args, InvokeOptions options) {
return Deployment.getInstance().invoke("any-type-function:index:dynListToDyn", TypeShape.of(DynListToDynResult.class), args, Utilities.withVersion(options));
var result = Deployment.getInstance().invoke("any-type-function:index:dynListToDyn", TypeShape.of(DynListToDynResult.class), args, Utilities.withVersion(options));
return result;
}
public static Output<DynListToDynResult> dynListToDyn(DynListToDynArgs args, InvokeOutputOptions options) {
return Deployment.getInstance().invoke("any-type-function:index:dynListToDyn", TypeShape.of(DynListToDynResult.class), args, Utilities.withVersion(options));
var result = Deployment.getInstance().invoke("any-type-function:index:dynListToDyn", TypeShape.of(DynListToDynResult.class), args, Utilities.withVersion(options));
return result;
}
public static CompletableFuture<DynListToDynResult> dynListToDynPlain(DynListToDynPlainArgs args, InvokeOptions options) {
return Deployment.getInstance().invokeAsync("any-type-function:index:dynListToDyn", TypeShape.of(DynListToDynResult.class), args, Utilities.withVersion(options));
var result = Deployment.getInstance().invokeAsync("any-type-function:index:dynListToDyn", TypeShape.of(DynListToDynResult.class), args, Utilities.withVersion(options));
return result;
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@

Loading
Loading