Skip to content

Commit

Permalink
Merge branch 'main' into fix-sticky
Browse files Browse the repository at this point in the history
  • Loading branch information
hasparus authored Jan 29, 2025
2 parents 0f5fc0e + 3e76e87 commit 719a8ee
Show file tree
Hide file tree
Showing 17 changed files with 72 additions and 77 deletions.
12 changes: 12 additions & 0 deletions .eslintrc.cjs
Original file line number Diff line number Diff line change
Expand Up @@ -246,5 +246,17 @@ module.exports = {
'cypress/unsafe-to-chain-command': 'off',
},
},
{
files: [
// environment should be parsed to avoid global dependencies and sacred .env files
'packages/**/environment.ts',
// - environment is inlined and must be "registered" in next.config.js
// - `import.meta.env` is not supported in Next.js yet
'packages/web/docs/**',
],
rules: {
'no-process-env': 'off',
},
},
],
};
6 changes: 2 additions & 4 deletions packages/migrations/src/environment.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
import { config as dotenv } from 'dotenv';
import zod from 'zod';

// eslint-disable-next-line no-process-env
if (!process.env.RELEASE) {
dotenv({
debug: true,
Expand Down Expand Up @@ -58,11 +57,10 @@ const ClickHouseModel = zod.union([
]);

const configs = {
// eslint-disable-next-line no-process-env
base: EnvironmentModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

clickhouse: ClickHouseModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

postgres: PostgresModel.safeParse(process.env),
};

Expand Down
13 changes: 6 additions & 7 deletions packages/services/emails/src/environment.ts
Original file line number Diff line number Diff line change
Expand Up @@ -104,19 +104,18 @@ const LogModel = zod.object({
});

const configs = {
// eslint-disable-next-line no-process-env
base: EnvironmentModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

email: EmailProviderModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

sentry: SentryModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

redis: RedisModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

prometheus: PrometheusModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

log: LogModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

tracing: OpenTelemetryConfigurationModel.safeParse(process.env),
};

Expand Down
9 changes: 4 additions & 5 deletions packages/services/policy/src/environment.ts
Original file line number Diff line number Diff line change
Expand Up @@ -60,15 +60,14 @@ const LogModel = zod.object({
});

const configs = {
// eslint-disable-next-line no-process-env
base: EnvironmentModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

sentry: SentryModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

prometheus: PrometheusModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

log: LogModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

tracing: OpenTelemetryConfigurationModel.safeParse(process.env),
};

Expand Down
11 changes: 5 additions & 6 deletions packages/services/rate-limit/src/environment.ts
Original file line number Diff line number Diff line change
Expand Up @@ -73,22 +73,21 @@ const LogModel = zod.object({
});

const configs = {
// eslint-disable-next-line no-process-env
base: EnvironmentModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

sentry: SentryModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

postgres: PostgresModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

prometheus: PrometheusModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

log: LogModel.safeParse(process.env),
tracing: zod
.object({
...OpenTelemetryConfigurationModel.shape,
OPENTELEMETRY_TRACE_USAGE_REQUESTS: emptyString(zod.literal('1').optional()),
})
// eslint-disable-next-line no-process-env

.safeParse(process.env),
};

Expand Down
15 changes: 7 additions & 8 deletions packages/services/schema/src/environment.ts
Original file line number Diff line number Diff line change
Expand Up @@ -88,21 +88,20 @@ const LogModel = zod.object({
});

const configs = {
// eslint-disable-next-line no-process-env
base: EnvironmentModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

sentry: SentryModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

redis: RedisModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

prometheus: PrometheusModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

log: LogModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

requestBroker: RequestBrokerModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

timings: TimingsModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

tracing: OpenTelemetryConfigurationModel.safeParse(process.env),
};

Expand Down
1 change: 0 additions & 1 deletion packages/services/server/src/environment.ts
Original file line number Diff line number Diff line change
Expand Up @@ -257,7 +257,6 @@ const LogModel = zod.object({
),
});

// eslint-disable-next-line no-process-env
const processEnv = process.env;

const configs = {
Expand Down
5 changes: 2 additions & 3 deletions packages/services/storage/src/environment.ts
Original file line number Diff line number Diff line change
Expand Up @@ -51,11 +51,10 @@ const ClickHouseModel = zod.union([
]);

const configs = {
// eslint-disable-next-line no-process-env
base: EnvironmentModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

clickhouse: ClickHouseModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

postgres: PostgresModel.safeParse(process.env),
};

Expand Down
13 changes: 6 additions & 7 deletions packages/services/stripe-billing/src/environment.ts
Original file line number Diff line number Diff line change
Expand Up @@ -75,19 +75,18 @@ const LogModel = zod.object({
});

const configs = {
// eslint-disable-next-line no-process-env
base: EnvironmentModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

sentry: SentryModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

postgres: PostgresModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

stripe: StripeModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

prometheus: PrometheusModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

log: LogModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

tracing: OpenTelemetryConfigurationModel.safeParse(process.env),
};

Expand Down
13 changes: 6 additions & 7 deletions packages/services/tokens/src/environment.ts
Original file line number Diff line number Diff line change
Expand Up @@ -77,24 +77,23 @@ const LogModel = zod.object({
});

const configs = {
// eslint-disable-next-line no-process-env
base: EnvironmentModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

sentry: SentryModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

postgres: PostgresModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

redis: RedisModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

prometheus: PrometheusModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

log: LogModel.safeParse(process.env),
tracing: zod
.object({
...OpenTelemetryConfigurationModel.shape,
OPENTELEMETRY_TRACE_USAGE_REQUESTS: emptyString(zod.literal('1').optional()),
})
// eslint-disable-next-line no-process-env

.safeParse(process.env),
};

Expand Down
11 changes: 5 additions & 6 deletions packages/services/usage-estimator/src/environment.ts
Original file line number Diff line number Diff line change
Expand Up @@ -68,17 +68,16 @@ const ClickHouseModel = zod.object({
});

const configs = {
// eslint-disable-next-line no-process-env
base: EnvironmentModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

sentry: SentryModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

clickhouse: ClickHouseModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

prometheus: PrometheusModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

log: LogModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

tracing: OpenTelemetryConfigurationModel.safeParse(process.env),
};

Expand Down
13 changes: 6 additions & 7 deletions packages/services/usage-ingestor/src/environment.ts
Original file line number Diff line number Diff line change
Expand Up @@ -113,19 +113,18 @@ const MigrationModel = zod.object({
});

const configs = {
// eslint-disable-next-line no-process-env
base: EnvironmentModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

sentry: SentryModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

kafka: KafkaModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

prometheus: PrometheusModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

log: LogModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

clickhouse: ClickHouseModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

migration: MigrationModel.safeParse(process.env),
};

Expand Down
11 changes: 5 additions & 6 deletions packages/services/usage/src/environment.ts
Original file line number Diff line number Diff line change
Expand Up @@ -91,17 +91,16 @@ const LogModel = zod.object({
});

const configs = {
// eslint-disable-next-line no-process-env
base: EnvironmentModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

sentry: SentryModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

kafka: KafkaModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

prometheus: PrometheusModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

log: LogModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

tracing: OpenTelemetryConfigurationModel.safeParse(process.env),
};

Expand Down
13 changes: 6 additions & 7 deletions packages/services/webhooks/src/environment.ts
Original file line number Diff line number Diff line change
Expand Up @@ -79,19 +79,18 @@ const LogModel = zod.object({
});

const configs = {
// eslint-disable-next-line no-process-env
base: EnvironmentModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

redis: RedisModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

sentry: SentryModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

prometheus: PrometheusModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

log: LogModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

requestBroker: RequestBrokerModel.safeParse(process.env),
// eslint-disable-next-line no-process-env

tracing: OpenTelemetryConfigurationModel.safeParse(process.env),
};

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ export function FeaturedCaseStudiesGrid({
caseStudies: CaseStudyFile[];
className?: string;
}) {
// eslint-disable-next-line no-process-env
if (process.env.NODE_ENV === 'development' && caseStudies.length < 6) {
while (caseStudies.length < 6) {
caseStudies = [...caseStudies, ...caseStudies, ...caseStudies];
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@ export async function MoreStoriesSection({
let caseStudies = pageMap.filter(isCaseStudy).slice(0, 4);

if (caseStudies.length < 4) {
// eslint-disable-next-line no-process-env
if (process.env.NODE_ENV === 'development') {
caseStudies = [...caseStudies, ...caseStudies, ...caseStudies];
} else {
Expand Down
1 change: 0 additions & 1 deletion packages/web/docs/src/app/case-studies/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,6 @@ export default async function CaseStudiesPage() {
/>
</DecorationIsolation>
</header>
{/* eslint-disable-next-line no-process-env */}
{(caseStudies.length >= 6 || process.env.NODE_ENV === 'development') && (
<>
<FeaturedCaseStudiesGrid caseStudies={caseStudies} className="mt-6 max-xl:hidden" />
Expand Down

0 comments on commit 719a8ee

Please sign in to comment.