Skip to content
Merged
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
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
import { mkdtempSync } from 'node:fs';
import { tmpdir } from 'node:os';
import { join } from 'node:path';
import { createBuilder } from './.modules/aspire.js';

const builder = await createBuilder();
const bindMountSource = mkdtempSync(join(tmpdir(), 'meilisearch-'));

const masterKey = await builder.addParameterWithValue('search-master-key', 'search-master-key-value', { secret: true });

// addMeilisearch — named master key and explicit port
const meilisearch = await builder.addMeilisearch('search', {
masterKey,
port: 7700
});

// addMeilisearch — defaults
const meilisearchWithDefaults = await builder.addMeilisearch('search-defaults');

// withDataVolume — fluent API on a Meilisearch builder
await meilisearch.withDataVolume({ name: 'search-data' });

// withDataBindMount — bind mount on a second Meilisearch builder
await meilisearchWithDefaults.withDataBindMount(bindMountSource);

// ---- Property access on MeilisearchResource (ExposeProperties = true) ----
const meilisearchResource = meilisearch;
const _primaryEndpoint = await meilisearchResource.primaryEndpoint.get();
const _host = await meilisearchResource.host.get();
const _port = await meilisearchResource.port.get();
const _uri = await meilisearchResource.uriExpression.get();
const _connectionString = await meilisearchResource.connectionStringExpression.get();

const meilisearchWithDefaultsResource = meilisearchWithDefaults;
const _defaultsPrimaryEndpoint = await meilisearchWithDefaultsResource.primaryEndpoint.get();
const _defaultsHost = await meilisearchWithDefaultsResource.host.get();
const _defaultsPort = await meilisearchWithDefaultsResource.port.get();
const _defaultsUri = await meilisearchWithDefaultsResource.uriExpression.get();
const _defaultsConnectionString = await meilisearchWithDefaultsResource.connectionStringExpression.get();

await builder.build().run();
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
{
"appHost": {
"path": "apphost.ts",
"language": "typescript/nodejs"
},
"profiles": {
"https": {
"applicationUrl": "https://localhost:29750;http://localhost:28931",
"environmentVariables": {
"ASPIRE_DASHBOARD_OTLP_ENDPOINT_URL": "https://localhost:10975",
"ASPIRE_RESOURCE_SERVICE_ENDPOINT_URL": "https://localhost:13319"
}
}
},
"packages": {
"CommunityToolkit.Aspire.Hosting.Meilisearch": ""
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
// @ts-check

import { defineConfig } from 'eslint/config';
import tseslint from 'typescript-eslint';

export default defineConfig({
files: ['apphost.ts'],
extends: [tseslint.configs.base],
languageOptions: {
parserOptions: {
projectService: true,
},
},
rules: {
'@typescript-eslint/no-floating-promises': ['error', { checkThenables: true }],
},
});
Loading
Loading