Skip to content

feat(premium): add "Remove Ads" feature with localization support and… #562

feat(premium): add "Remove Ads" feature with localization support and…

feat(premium): add "Remove Ads" feature with localization support and… #562

Workflow file for this run

name: ci
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: "20"
- name: Setup pnpm
uses: pnpm/action-setup@v4
with:
version: 9
- name: Get pnpm store directory
shell: bash
run: |
echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV
- name: Setup pnpm cache
uses: actions/cache@v4
with:
path: ${{ env.STORE_PATH }}
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-pnpm-store-
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Generate Prisma client
run: pnpm prisma generate
- name: Run linting
run: pnpm lint
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: "20"
- name: Setup pnpm
uses: pnpm/action-setup@v4
with:
version: 9
- name: Get pnpm store directory
shell: bash
run: |
echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV
- name: Setup pnpm cache
uses: actions/cache@v4
with:
path: ${{ env.STORE_PATH }}
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-pnpm-store-
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Generate Prisma client
run: pnpm prisma generate
- name: Build project
run: pnpm build
env:
BETTER_AUTH_URL: http://localhost:3000
DATABASE_URL: postgresql://user:password@localhost:5432/test_db
GOOGLE_CLIENT_ID: test_client_id
GOOGLE_CLIENT_SECRET: test_client_secret
RESEND_API_KEY: re_test_key
BETTER_AUTH_SECRET: test_secret_key_32_chars_minimum
OPENPANEL_SECRET_KEY: test_secret
NEXT_PUBLIC_OPENPANEL_CLIENT_ID: test_client_id
NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY: test_client_id
NEXT_PUBLIC_STRIPE_PRICE_MONTHLY_EU: test_price_monthly
NEXT_PUBLIC_STRIPE_PRICE_YEARLY_EU: test_price_yearly
NEXT_PUBLIC_STRIPE_PRICE_MONTHLY_US: test_price_monthly
NEXT_PUBLIC_STRIPE_PRICE_YEARLY_US: test_price_yearly
NEXT_PUBLIC_STRIPE_PRICE_MONTHLY_LATAM: test_price_monthly
NEXT_PUBLIC_STRIPE_PRICE_YEARLY_LATAM: test_price_yearly
NEXT_PUBLIC_STRIPE_PRICE_MONTHLY_BR: test_price_monthly
NEXT_PUBLIC_STRIPE_PRICE_YEARLY_BR: test_price_yearly
NEXT_PUBLIC_STRIPE_PRICE_MONTHLY_RU: test_price_monthly
NEXT_PUBLIC_STRIPE_PRICE_YEARLY_RU: test_price_yearly
NEXT_PUBLIC_STRIPE_PRICE_MONTHLY_CN: test_price_monthly
NEXT_PUBLIC_STRIPE_PRICE_YEARLY_CN: test_price_yearly
NEXT_PUBLIC_APP_URL: http://localhost:3000
STRIPE_SECRET_KEY: test_secret_key
REVENUECAT_SECRET_KEY: test_secret_key
REVENUECAT_WEBHOOK_SECRET: test_webhook_secret
STRIPE_WEBHOOK_SECRET: test_webhook_secret
NEXT_PUBLIC_SHOW_ADS: false
NEXT_PUBLIC_AD_CLIENT: test_client_id
NEXT_PUBLIC_VERTICAL_LEFT_BANNER_AD_SLOT: 1234567890
NEXT_PUBLIC_VERTICAL_RIGHT_BANNER_AD_SLOT: 1234567890
NEXT_PUBLIC_EQUIPMENT_SELECTION_BANNER_AD_SLOT: 1234567890
NEXT_PUBLIC_EXERCISE_SELECTION_BANNER_AD_SLOT: 1234567890
NEXT_PUBLIC_MUSCLE_SELECTION_BANNER_AD_SLOT: 1234567890
NEXT_PUBLIC_TOP_WORKOUT_SESSION_BANNER_AD_SLOT: 1234567890
NEXT_PUBLIC_BOTTOM_WORKOUT_SESSION_BANNER_AD_SLOT: 1234567890
NEXT_PUBLIC_TOP_STEPPER_STEP_1_BANNER_AD_SLOT: 1234567890
NEXT_PUBLIC_TOP_STEPPER_STEP_2_BANNER_AD_SLOT: 1234567890
NEXT_PUBLIC_TOP_STEPPER_STEP_3_BANNER_AD_SLOT: 1234567890
NEXT_PUBLIC_TOP_PROGRAMS_BANNER_AD_SLOT: 1234567890
NEXT_PUBLIC_BOTTOM_PROGRAMS_BANNER_AD_SLOT: 1234567890
NEXT_PUBLIC_TOP_TOOLS_BANNER_AD_SLOT: 1234567890
NEXT_PUBLIC_BOTTOM_TOOLS_BANNER_AD_SLOT: 1234567890
NEXT_PUBLIC_TOP_CALCULATOR_HUB_BANNER_AD_SLOT: 1234567890
NEXT_PUBLIC_BOTTOM_CALCULATOR_HUB_BANNER_AD_SLOT: 1234567890
NEXT_PUBLIC_TOP_PROGRAM_DETAILS_BANNER_AD_SLOT: 1234567890
NEXT_PUBLIC_BOTTOM_PROGRAM_DETAILS_BANNER_AD_SLOT: 1234567890
NEXT_PUBLIC_TOP_PROFILE_BANNER_AD_SLOT: 1234567890
NEXT_PUBLIC_IN_ARTICLE_BMI_1_AD_SLOT: 1234567890
NEXT_PUBLIC_IN_ARTICLE_BMI_2_AD_SLOT: 1234567890
NEXT_PUBLIC_TOP_BMI_BANNER_AD_SLOT: 1234567890
NEXT_PUBLIC_BOTTOM_BMI_BANNER_AD_SLOT: 1234567890
NEXT_PUBLIC_TOP_HEART_ZONES_BANNER_AD_SLOT: 1234567890
NEXT_PUBLIC_BOTTOM_HEART_ZONES_BANNER_AD_SLOT: 1234567890
NEXT_PUBLIC_IN_ARTICLE_HEART_ZONES_AD_SLOT_1: 1234567890
NEXT_PUBLIC_IN_ARTICLE_HEART_ZONES_AD_SLOT_2: 1234567890
NEXT_PUBLIC_IN_ARTICLE_HEART_ZONES_AD_SLOT_3: 1234567890
NEXT_PUBLIC_TOP_MIFFLIN_ST_JEOR_CALCULATOR_AD_SLOT: 1234567890
NEXT_PUBLIC_BOTTOM_CALORIE_CALCULATOR_AD_SLOT: 1234567890
NEXT_PUBLIC_TOP_OXFORD_CALCULATOR_AD_SLOT: 1234567890
NEXT_PUBLIC_BOTTOM_OXFORD_CALCULATOR_AD_SLOT: 1234567890
NEXT_PUBLIC_TOP_HARRIS_BENEDICT_CALCULATOR_AD_SLOT: 1234567890
NEXT_PUBLIC_TOP_KATCH_MCARDLE_CALCULATOR_AD_SLOT: 1234567890
NEXT_PUBLIC_TOP_CUNNINGHAM_CALCULATOR_AD_SLOT: 1234567890
NEXT_PUBLIC_TOP_CALORIE_CALCULATOR_COMPARISON_AD_SLOT: 1234567890
NEXT_PUBLIC_BOTTOM_CALORIE_CALCULATOR_COMPARISON_AD_SLOT: 1234567890