Compare commits
1
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
bcd964dcca |
@@ -17,26 +17,19 @@ jobs:
|
||||
name: CI
|
||||
runs-on: node
|
||||
steps:
|
||||
- name: Install Docker and corepack
|
||||
- name: Install Node.js and Docker
|
||||
run: |
|
||||
apt-get update
|
||||
apt-get install -y docker.io
|
||||
corepack enable
|
||||
apt-get install -y nodejs docker.io
|
||||
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Install pnpm via corepack
|
||||
run: corepack install
|
||||
|
||||
- name: Install dependencies
|
||||
run: pnpm install --ignore-scripts
|
||||
run: npm install
|
||||
|
||||
- name: Run tests
|
||||
run: pnpm test -- --run 2>&1 || echo "Tests completed"
|
||||
|
||||
- name: Build
|
||||
run: pnpm run build
|
||||
run: npm test -- --run 2>&1 || echo "Tests completed"
|
||||
|
||||
- name: Get short SHA
|
||||
id: sha
|
||||
|
||||
@@ -1,3 +1,2 @@
|
||||
ignore-scripts=false
|
||||
enable-pre-post-scripts=true
|
||||
minimum-release-age=0
|
||||
|
||||
@@ -117,7 +117,7 @@ export default function Header() {
|
||||
</div>
|
||||
<div className="flex items-center justify-between">
|
||||
<a
|
||||
href="https://github.com/Riotpiaole"
|
||||
href="https://github.com/rockliang"
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
className="text-sm text-gray-700 dark:text-gray-300 hover:text-blue-600 dark:hover:text-blue-400 flex-1"
|
||||
@@ -125,7 +125,7 @@ export default function Header() {
|
||||
{t.header.contact.github}
|
||||
</a>
|
||||
<button
|
||||
onClick={() => handleCopy('https://github.com/Riotpiaole', 'GitHub')}
|
||||
onClick={() => handleCopy('https://github.com/rockliang', 'GitHub')}
|
||||
className="text-xs px-2 py-1 rounded bg-gray-100 dark:bg-gray-800 text-gray-600 dark:text-gray-400 hover:bg-blue-100 dark:hover:bg-blue-900"
|
||||
>
|
||||
{copied === 'GitHub' ? '✓' : t.header.contact.copy}
|
||||
@@ -133,7 +133,7 @@ export default function Header() {
|
||||
</div>
|
||||
<div className="flex items-center justify-between">
|
||||
<a
|
||||
href="https://forgejo.riotpiao.com"
|
||||
href="https://github.com/rockliang"
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
className="text-sm text-gray-700 dark:text-gray-300 hover:text-blue-600 dark:hover:text-blue-400 flex-1"
|
||||
@@ -141,7 +141,7 @@ export default function Header() {
|
||||
{t.header.contact.privateGithub}
|
||||
</a>
|
||||
<button
|
||||
onClick={() => handleCopy('https://forgejo.riotpiao.com', 'PrivateGithub')}
|
||||
onClick={() => handleCopy('https://github.com/rockliang', 'PrivateGithub')}
|
||||
className="text-xs px-2 py-1 rounded bg-gray-100 dark:bg-gray-800 text-gray-600 dark:text-gray-400 hover:bg-blue-100 dark:hover:bg-blue-900"
|
||||
>
|
||||
{copied === 'PrivateGithub' ? '✓' : t.header.contact.copy}
|
||||
@@ -314,7 +314,7 @@ export default function Header() {
|
||||
</div>
|
||||
<div className="flex items-center justify-between">
|
||||
<a
|
||||
href="https://github.com/Riotpiaole"
|
||||
href="https://github.com/rockliang"
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
className="text-sm text-gray-700 dark:text-gray-300 hover:text-blue-600 flex-1"
|
||||
@@ -322,7 +322,7 @@ export default function Header() {
|
||||
{t.header.contact.github}
|
||||
</a>
|
||||
<button
|
||||
onClick={() => handleCopy('https://github.com/Riotpiaole', 'GitHub')}
|
||||
onClick={() => handleCopy('https://github.com/rockliang', 'GitHub')}
|
||||
className="text-xs px-2 py-1 rounded bg-gray-100 dark:bg-gray-700 text-gray-600 dark:text-gray-400 hover:bg-blue-100 dark:hover:bg-blue-900"
|
||||
>
|
||||
{copied === 'GitHub' ? '✓' : t.header.contact.copy}
|
||||
@@ -330,7 +330,7 @@ export default function Header() {
|
||||
</div>
|
||||
<div className="flex items-center justify-between">
|
||||
<a
|
||||
href="https://forgejo.riotpiao.com"
|
||||
href="https://github.com/rockliang"
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
className="text-sm text-gray-700 dark:text-gray-300 hover:text-blue-600 flex-1"
|
||||
@@ -338,7 +338,7 @@ export default function Header() {
|
||||
{t.header.contact.privateGithub}
|
||||
</a>
|
||||
<button
|
||||
onClick={() => handleCopy('https://forgejo.riotpiao.com', 'PrivateGithub')}
|
||||
onClick={() => handleCopy('https://github.com/rockliang', 'PrivateGithub')}
|
||||
className="text-xs px-2 py-1 rounded bg-gray-100 dark:bg-gray-700 text-gray-600 dark:text-gray-400 hover:bg-blue-100 dark:hover:bg-blue-900"
|
||||
>
|
||||
{copied === 'PrivateGithub' ? '✓' : t.header.contact.copy}
|
||||
|
||||
@@ -6,9 +6,6 @@ metadata:
|
||||
labels:
|
||||
app.kubernetes.io/name: portfolio
|
||||
app.kubernetes.io/component: web
|
||||
annotations:
|
||||
argocd-image-updater.argoproj.io/image-list: portfolio=forgejo.riotpiao.com/rock/portfolio
|
||||
argocd-image-updater.argoproj.io/portfolio.update-strategy: latest
|
||||
spec:
|
||||
replicas: 2
|
||||
selector:
|
||||
|
||||
@@ -1,22 +1,13 @@
|
||||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
namespace: portfolio
|
||||
|
||||
resources:
|
||||
- namespace.yaml
|
||||
- configmap.enc.yaml
|
||||
- deployment.yaml
|
||||
- service.yaml
|
||||
- ingress.yaml
|
||||
|
||||
# SOPS-encrypted secrets via ksops generator (ArgoCD repo-server plugin)
|
||||
# ksops intercepts encrypted files, decrypts them, returns valid resources
|
||||
generatorOptions:
|
||||
disableNameSuffixHash: true
|
||||
|
||||
generators:
|
||||
- secret-generator.yaml
|
||||
|
||||
# ArgoCD Image Updater configuration - for tag updates
|
||||
images:
|
||||
- name: forgejo.riotpiao.com/rock/portfolio
|
||||
newTag: latest
|
||||
# Decrypt secrets via SOPS before applying
|
||||
sops:
|
||||
version: 3
|
||||
|
||||
@@ -1,10 +0,0 @@
|
||||
apiVersion: viaduct.ai/v1
|
||||
kind: ksops
|
||||
metadata:
|
||||
name: portfolio-secrets-generator
|
||||
annotations:
|
||||
config.kubernetes.io/function: |
|
||||
exec:
|
||||
path: ksops
|
||||
files:
|
||||
- configmap.enc.yaml
|
||||
@@ -12,7 +12,6 @@
|
||||
"keywords": [],
|
||||
"author": "",
|
||||
"license": "ISC",
|
||||
"packageManager": "[email protected]",
|
||||
"dependencies": {
|
||||
"framer-motion": "^11.0.0",
|
||||
"lucide-react": "^1.41.0",
|
||||
|
||||
Generated
+747
-849
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user