|
19 | 19 |
|
20 | 20 | var builder = DistributedApplication.CreateBuilder(args);
|
21 | 21 |
|
| 22 | +// Add a secret parameter named "secret" |
| 23 | +var llmUrl = builder.AddParameter("LlmGatewayUrl", secret: true); |
| 24 | +var llmServiceAccountPath = builder.AddParameter("LlmGatewayServiceAccountPath", secret: true); |
| 25 | + |
22 | 26 | var cloneAll = builder.AddProject<Projects.docs_assembler>("DocsAssemblerCloneAll").WithArgs(["repo", "clone-all", .. globalArguments]);
|
23 | 27 |
|
24 | 28 | var buildAll = builder.AddProject<Projects.docs_assembler>("DocsAssemblerBuildAll").WithArgs(["repo", "build-all", .. globalArguments])
|
25 | 29 | .WaitForCompletion(cloneAll);
|
26 | 30 |
|
27 |
| -var elasticsearch = builder.AddElasticsearch("elasticsearch"); |
| 31 | +var elasticsearch = builder.AddElasticsearch("elasticsearch") |
| 32 | + .WithEnvironment("LICENSE", "trial"); |
28 | 33 |
|
29 | 34 | var api = builder.AddProject<Projects.Elastic_Documentation_Api_Lambda>("ApiLambda").WithArgs(globalArguments)
|
| 35 | + .WithEnvironment("ENVIRONMENT", "dev") |
| 36 | + .WithEnvironment("LLM_GATEWAY_FUNCTION_URL", llmUrl) |
| 37 | + .WithEnvironment("LLM_GATEWAY_SERVICE_ACCOUNT_KEY_PATH", llmServiceAccountPath) |
30 | 38 | .WaitFor(elasticsearch)
|
31 | 39 | .WithReference(elasticsearch);
|
32 | 40 |
|
33 | 41 | var indexElasticsearch = builder.AddProject<Projects.docs_assembler>("DocsAssemblerElasticsearch")
|
34 |
| - .WithArgs(["repo", "build-all", "--exporters", "html,elasticsearch", .. globalArguments]) |
| 42 | + .WithArgs(["repo", "build-all", "--exporters", "elasticsearch", .. globalArguments]) |
| 43 | + .WithEnvironment("DOCUMENTATION_ELASTIC_URL", elasticsearch.GetEndpoint("http")) |
| 44 | + .WithEnvironment(context => |
| 45 | + { |
| 46 | + context.EnvironmentVariables["DOCUMENTATION_ELASTIC_PASSWORD"] = elasticsearch.Resource.PasswordParameter; |
| 47 | + }) |
| 48 | + .WithReference(elasticsearch) |
| 49 | + .WithExplicitStart() |
| 50 | + .WaitFor(elasticsearch) |
| 51 | + .WaitForCompletion(cloneAll); |
| 52 | + |
| 53 | +var indexElasticsearchSemantic = builder.AddProject<Projects.docs_assembler>("DocsAssemblerElasticsearchSemantic") |
| 54 | + .WithArgs(["repo", "build-all", "--exporters", "semantic", .. globalArguments]) |
35 | 55 | .WithEnvironment("DOCUMENTATION_ELASTIC_URL", elasticsearch.GetEndpoint("http"))
|
36 | 56 | .WithEnvironment(context =>
|
37 | 57 | {
|
|
44 | 64 |
|
45 | 65 | var serveStatic = builder.AddProject<Projects.docs_builder>("DocsBuilderServeStatic")
|
46 | 66 | .WithReference(elasticsearch)
|
| 67 | + .WithEnvironment("LLM_GATEWAY_FUNCTION_URL", llmUrl) |
| 68 | + .WithEnvironment("LLM_GATEWAY_SERVICE_ACCOUNT_KEY_PATH", llmServiceAccountPath) |
| 69 | + .WithEnvironment("DOCUMENTATION_ELASTIC_URL", elasticsearch.GetEndpoint("http")) |
| 70 | + .WithEnvironment(context => |
| 71 | + { |
| 72 | + context.EnvironmentVariables["DOCUMENTATION_ELASTIC_PASSWORD"] = elasticsearch.Resource.PasswordParameter; |
| 73 | + }) |
47 | 74 | .WithHttpEndpoint(port: 4000, isProxied: false)
|
48 | 75 | .WithArgs(["serve-static", .. globalArguments])
|
49 | 76 | .WithHttpHealthCheck("/", 200)
|
| 77 | + .WaitFor(elasticsearch) |
50 | 78 | .WaitForCompletion(buildAll);
|
51 | 79 |
|
52 |
| - |
53 |
| - |
54 | 80 | builder.Build().Run();
|
0 commit comments