Skip to content
Merged
Show file tree
Hide file tree
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
51 changes: 51 additions & 0 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
name: Deploy to GitHub Pages

on:
push:
branches: [ main ]
workflow_dispatch:

permissions:
contents: read
pages: write
id-token: write

concurrency:
group: "pages"
cancel-in-progress: false

jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Setup Node
uses: actions/setup-node@v4
with:
node-version-file: '.nvmrc'

- name: Install dependencies
run: npm install

- name: Build with Astro
run: npm run build

- name: Upload artifact
if: github.event_name != 'pull_request'
uses: actions/upload-pages-artifact@v3
with:
path: ./dist

deploy:
if: github.event_name != 'pull_request'
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
needs: build
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4
9 changes: 9 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,13 @@
# dependencies
node_modules/

# build output
dist/
.astro/

# environment variables
.env
.env.production

# macOS-specific files
.DS_Store
7 changes: 5 additions & 2 deletions astro.config.mjs
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
import { defineConfig } from "astro/config";
import { defineConfig } from 'astro/config';

// https://astro.build/config
export default defineConfig({});
export default defineConfig({
site: 'https://python-spain.github.io',
base: '/2026.es.pycon.org',
Comment on lines +5 to +6

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Este nombre va a funcionar con el DNS previsto?

la URL deberia ser https://2026.es.pycon.org y deberia salir todo de /

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

para que ahora funcionen los estáticos con githubpages debe añadirse el folder pero luego será '/' como dices... lo he dejado comentado en el código. no sé si os mola así.. o lo dejo en el canal de Discord?

Comment on lines +5 to +6

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

suposo q haurem d'actualitzar al futur perquè sigui la URL directament https://2026.es.pycon.org

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sí, com bé dius, després l'haurem de modificar... ho he deixat comentat. no sé si us agrada..

});
18 changes: 18 additions & 0 deletions src/content/config.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
import { defineCollection, z } from 'astro:content';

// Define the sponsors collection
const sponsors = defineCollection({
type: 'content', // 'content' for .md/.mdx files (or 'data' for .json/.yaml)
schema: ({ image }) => z.object({
name: z.string(),
url: z.string().url(),
// Define the exact allowed tiers (Keystone, Diamond, etc.)
tier: z.enum(['keystone', 'diamond', 'platinum', 'gold', 'silver', 'bronze']),

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

són: principal, platino, oro, plata, bronce. Però ja ho canviarem.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

sí, era test- se m'ha colat...

// Astro will automatically optimize the image
logo: image().refine((img) => img.width >= 100, {
message: "Logo must be at least 100px wide",
}),
}),
});

export const collections = { sponsors };