Skip to content

Perl Typescript Support #1361

@Omnideth

Description

@Omnideth

Related to an existing integration?

Yes

Existing integration

CommunityToolkit.Aspire.Hosting.Perl

Overview

The Perl integration was made in 13.1 and couldn't dogfood appropriately until it became live. Typescript support was missed in the jump to 13.3.

Usage example

import { CertificateTrustScope, createBuilder } from "./.modules/aspire.js";

const builder = await createBuilder();

const cartonProjectApi = await builder.addPerlApi("perl-api", "../scripts", "API.pl");
await cartonProjectApi.withCarton();
await cartonProjectApi.withProjectDependencies({ cartonDeployment: true });
await cartonProjectApi.withLocalLib({ path: "local" });
await cartonProjectApi.withDeveloperCertificateTrust(true);
await cartonProjectApi.withCertificateTrustScope(CertificateTrustScope.Append);
await cartonProjectApi.withPerlCertificateTrust();
await cartonProjectApi.withHttpEndpoint({ name: "http", env: "PORT" });

const perlDriver = await builder.addPerlScript("perl-driver", "../scripts", "driver.pl");
await perlDriver.withEnvironment("API_URL", cartonProjectApi.getEndpoint("http"));
await perlDriver.withReference(cartonProjectApi);
await perlDriver.waitFor(cartonProjectApi);

await builder.build().run();

Breaking change?

Yes

Alternatives

I just have to AspireExport things.

Additional context

No response

Help us help you

Yes, I'd like to be assigned to work on this item

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions