import * as Yaml from 'yaml';
const ConfigProviderLive = Layer.unwrapEffect(
Effect.gen(function* () {
const fs = yield* FileSystem.FileSystem;
const configProvider = yield* pipe(
fs.readFileString('/path/to/config.yaml'),
Effect.flatMap((content) =>
Effect.try({
try: () => Yaml.parse(content),
catch: (e) => `Could not parse config file : ${e}`,
}),
),
Effect.map((data) => ConfigProvider.fromJson(data)),
);
return Layer.setConfigProvider(configProvider);
}),
);
import * as Yaml from 'yaml';
const ConfigProviderLive = Layer.unwrapEffect(
Effect.gen(function* () {
const fs = yield* FileSystem.FileSystem;
const configProvider = yield* pipe(
fs.readFileString('/path/to/config.yaml'),
Effect.flatMap((content) =>
Effect.try({
try: () => Yaml.parse(content),
catch: (e) => `Could not parse config file : ${e}`,
}),
),
Effect.map((data) => ConfigProvider.fromJson(data)),
);
return Layer.setConfigProvider(configProvider);
}),
);