env thing and starting to changes
This commit is contained in:
13
.env.example
Normal file
13
.env.example
Normal file
@@ -0,0 +1,13 @@
|
||||
DATABASE_URL=${{project.DATABASE_URL}}
|
||||
REDIS_URL=${{project.REDIS_URL}}
|
||||
|
||||
PUBLIC_NODE_ENV=${{project.PUBLIC_NODE_ENV}}
|
||||
NODE_ENV=${{project.NODE_ENV}}
|
||||
|
||||
PUBLIC_URL=${{project.BETTER_AUTH_URL}}
|
||||
PUBLIC_FRONTEND_URL=${{project.BETTER_AUTH_URL}}
|
||||
|
||||
BETTER_AUTH_SECRET=${{project.BETTER_AUTH_URL}}
|
||||
BETTER_AUTH_URL=${{project.BETTER_AUTH_URL}}
|
||||
|
||||
DEBUG_API_KEY=${{project.DEBUG_API_KEY}}
|
||||
@@ -1 +1,2 @@
|
||||
export * from "@pkg/logic/domains/order/data/entities";
|
||||
export * from "@pkg/logic/domains/order/data/enums";
|
||||
|
||||
@@ -1,39 +0,0 @@
|
||||
<script lang="ts">
|
||||
import Icon from "$lib/components/atoms/icon.svelte";
|
||||
import { TRANSITION_COLORS } from "$lib/core/constants";
|
||||
import { cn } from "$lib/utils";
|
||||
import FilterIcon from "~icons/solar/filter-broken";
|
||||
import * as Sheet from "$lib/components/ui/sheet/index.js";
|
||||
import TicketFiltersSelect from "../ticket-filters-select.svelte";
|
||||
|
||||
import Button from "$lib/components/ui/button/button.svelte";
|
||||
import CloseIcon from "~icons/lucide/x";
|
||||
import Title from "$lib/components/atoms/title.svelte";
|
||||
|
||||
let open = $state(false);
|
||||
|
||||
const close = () => (open = false);
|
||||
</script>
|
||||
|
||||
<Sheet.Root bind:open>
|
||||
<Sheet.Trigger
|
||||
class={cn(
|
||||
"grid place-items-center rounded-full bg-brand-100 p-4 text-brand-500 shadow-lg hover:bg-brand-500 hover:text-white",
|
||||
TRANSITION_COLORS,
|
||||
)}
|
||||
>
|
||||
<Icon icon={FilterIcon} cls={cn("h-8 w-auto", TRANSITION_COLORS)} />
|
||||
</Sheet.Trigger>
|
||||
<Sheet.Content side="bottom">
|
||||
<div class="flex justify-between gap-4">
|
||||
<Title size="h4" color="black">Tickets Filters</Title>
|
||||
<Button size="iconSm" variant="white" onclick={() => close()}>
|
||||
<Icon icon={CloseIcon} cls={cn("h-6 w-auto")} />
|
||||
</Button>
|
||||
</div>
|
||||
|
||||
<div class="flex max-h-[80vh] w-full flex-col gap-4 overflow-y-auto p-4">
|
||||
<TicketFiltersSelect onApplyClick={() => close()} />
|
||||
</div>
|
||||
</Sheet.Content>
|
||||
</Sheet.Root>
|
||||
@@ -1,50 +0,0 @@
|
||||
<script lang="ts">
|
||||
import Icon from "$lib/components/atoms/icon.svelte";
|
||||
import { TRANSITION_COLORS } from "$lib/core/constants";
|
||||
import { cn } from "$lib/utils";
|
||||
import SearchIcon from "~icons/solar/minimalistic-magnifer-linear";
|
||||
import * as Sheet from "$lib/components/ui/sheet/index.js";
|
||||
import TicketSearchInput from "../ticket-search-input.svelte";
|
||||
import Button from "$lib/components/ui/button/button.svelte";
|
||||
import CloseIcon from "~icons/lucide/x";
|
||||
import Title from "$lib/components/atoms/title.svelte";
|
||||
|
||||
let { onSubmit }: { onSubmit: () => void } = $props();
|
||||
|
||||
function _onSubmit() {
|
||||
onSubmit();
|
||||
close();
|
||||
}
|
||||
|
||||
let open = $state(false);
|
||||
|
||||
const close = () => (open = false);
|
||||
</script>
|
||||
|
||||
<Sheet.Root bind:open>
|
||||
<Sheet.Trigger
|
||||
class={cn(
|
||||
"grid place-items-center rounded-full bg-brand-500 p-4 text-white shadow-lg hover:bg-brand-700",
|
||||
TRANSITION_COLORS,
|
||||
)}
|
||||
>
|
||||
<Icon
|
||||
icon={SearchIcon}
|
||||
cls={cn("h-8 w-auto text-white", TRANSITION_COLORS)}
|
||||
/>
|
||||
</Sheet.Trigger>
|
||||
<Sheet.Content side="bottom">
|
||||
<div class="flex w-full flex-col gap-4">
|
||||
<div class="flex justify-between gap-4">
|
||||
<Title size="h5" color="black">Search Flights</Title>
|
||||
<Button size="iconSm" variant="white" onclick={() => close()}>
|
||||
<Icon icon={CloseIcon} cls={cn("h-6 w-auto")} />
|
||||
</Button>
|
||||
</div>
|
||||
|
||||
<div class="flex max-h-[80vh] w-full flex-col gap-4 overflow-y-auto">
|
||||
<TicketSearchInput onSubmit={_onSubmit} />
|
||||
</div>
|
||||
</div>
|
||||
</Sheet.Content>
|
||||
</Sheet.Root>
|
||||
@@ -1,11 +1,9 @@
|
||||
<script lang="ts">
|
||||
import { page } from "$app/stores";
|
||||
import TicketFiltersSheet from "$lib/domains/ticket/view/search/ticket-filters-sheet.svelte";
|
||||
import TicketSearchInputSheet from "$lib/domains/ticket/view/search/ticket-search-input-sheet.svelte";
|
||||
import MaxWidthWrapper from "$lib/components/molecules/max-width-wrapper.svelte";
|
||||
import SearchedTicketsList from "$lib/domains/ticket/view/searched-tickets-list.svelte";
|
||||
import TicketFiltersSelect from "$lib/domains/ticket/view/ticket-filters-select.svelte";
|
||||
import TicketSearchInput from "$lib/domains/ticket/view/ticket-search-input.svelte";
|
||||
import MaxWidthWrapper from "$lib/components/molecules/max-width-wrapper.svelte";
|
||||
import { flightTicketVM } from "$lib/domains/ticket/view/ticket.vm.svelte";
|
||||
import { onMount } from "svelte";
|
||||
import { toast } from "svelte-sonner";
|
||||
@@ -49,8 +47,3 @@
|
||||
</MaxWidthWrapper>
|
||||
</section>
|
||||
</div>
|
||||
|
||||
<div class="fixed bottom-4 right-4 z-50 flex flex-col gap-4 lg:hidden">
|
||||
<TicketFiltersSheet />
|
||||
<TicketSearchInputSheet {onSubmit} />
|
||||
</div>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
FROM node:22.11.0 AS base
|
||||
FROM node:24.10.0 AS base
|
||||
|
||||
RUN npm i -g bun
|
||||
|
||||
@@ -6,15 +6,15 @@ FROM base AS builder
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
COPY package.json bun.lockb turbo.json ./
|
||||
COPY package.json bun.lock turbo.json ./
|
||||
|
||||
COPY administrative/admin/package.json ./administrative/admin/package.json
|
||||
COPY apps/admin/package.json ./apps/admin/package.json
|
||||
|
||||
COPY packages ./packages
|
||||
|
||||
RUN bun install
|
||||
|
||||
COPY administrative/admin ./administrative/admin
|
||||
COPY apps/admin ./apps/admin
|
||||
|
||||
RUN bun install
|
||||
|
||||
@@ -26,4 +26,4 @@ EXPOSE 3000
|
||||
|
||||
RUN chmod +x scripts/prod.start.sh
|
||||
|
||||
CMD ["/bin/sh", "scripts/prod.start.sh", "administrative/admin"]
|
||||
CMD ["/bin/sh", "scripts/prod.start.sh", "apps/admin"]
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
FROM node:22.11.0 AS base
|
||||
FROM node:24.10.0 AS base
|
||||
|
||||
RUN npm i -g bun
|
||||
|
||||
@@ -8,13 +8,13 @@ WORKDIR /app
|
||||
|
||||
COPY package.json bun.lockb turbo.json ./
|
||||
|
||||
COPY frontends/uno-fe/package.json ./frontends/uno-fe/package.json
|
||||
COPY apps/frontend/package.json ./apps/frontend/package.json
|
||||
|
||||
COPY packages ./packages
|
||||
|
||||
RUN bun install
|
||||
|
||||
COPY frontends/uno-fe ./frontends/uno-fe
|
||||
COPY apps/frontend ./apps/frontend
|
||||
|
||||
RUN bun install
|
||||
|
||||
@@ -26,4 +26,4 @@ EXPOSE 3000
|
||||
|
||||
RUN chmod +x scripts/prod.start.sh
|
||||
|
||||
CMD ["/bin/sh", "scripts/prod.start.sh", "frontends/uno-fe"]
|
||||
CMD ["/bin/sh", "scripts/prod.start.sh", "apps/frontend"]
|
||||
@@ -1,4 +1,4 @@
|
||||
FROM node:22.11.0 AS base
|
||||
FROM node:24.10.0 AS base
|
||||
|
||||
RUN npm i -g bun
|
||||
|
||||
@@ -6,7 +6,7 @@ FROM base AS primary
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
COPY package.json bun.lockb turbo.json ./
|
||||
COPY package.json bun.lock turbo.json ./
|
||||
|
||||
COPY packages/db packages/db
|
||||
|
||||
|
||||
@@ -1,36 +0,0 @@
|
||||
FROM python:3.13-slim-bookworm
|
||||
|
||||
RUN apt-get update && apt-get install -y \
|
||||
bash wget gnupg curl zip unzip \
|
||||
libnss3 libatk1.0-0 libatk-bridge2.0-0 \
|
||||
libcups2 libxrandr2 libxss1 libasound2 \
|
||||
libxdamage1 libgbm-dev \
|
||||
libxcomposite1 libcurl4 xvfb \
|
||||
fonts-liberation libnspr4 chromium && \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
RUN useradd -m -d /home/bro -s /bin/bash bro
|
||||
|
||||
WORKDIR /home/bro/app
|
||||
|
||||
RUN chown -R bro:bro /home/bro
|
||||
|
||||
USER bro
|
||||
|
||||
ENV PATH="$PATH:/home/bro/.local/bin"
|
||||
|
||||
RUN pip install --user --no-cache-dir uv
|
||||
|
||||
RUN uv python install 3.13
|
||||
|
||||
COPY --chown=bro:bro workers/ticket_scraper/uv.lock workers/ticket_scraper/pyproject.toml workers/ticket_scraper/.python-version ./
|
||||
|
||||
RUN uv lock
|
||||
|
||||
COPY --chown=bro:bro workers/ticket_scraper ./
|
||||
|
||||
EXPOSE 8080
|
||||
|
||||
ENV CHROME_EXECUTABLE_PATH="/usr/bin/chromium"
|
||||
|
||||
CMD ["uv", "run", "python", "-m", "fastapi", "run", "--port=8080", "main.py"]
|
||||
15
scripts/populate.env.sh
Executable file
15
scripts/populate.env.sh
Executable file
@@ -0,0 +1,15 @@
|
||||
#!/bin/bash
|
||||
|
||||
# copy over the environment variables from the base /.env file to all other apps & packages in apps/* and packages/*
|
||||
|
||||
for dir in apps/*; do
|
||||
if [ -d "$dir" ]; then
|
||||
cp .env $dir/.env
|
||||
fi
|
||||
done
|
||||
|
||||
for dir in packages/*; do
|
||||
if [ -d "$dir" ]; then
|
||||
cp .env $dir/.env
|
||||
fi
|
||||
done
|
||||
Reference in New Issue
Block a user