First cut
Gitea Actions Demo / Explore-Gitea-Actions (push) Failing after 28s Details

This commit is contained in:
Martyn Ranyard 2023-11-06 16:03:40 +01:00
parent b4260c83f6
commit cf2487af89
No known key found for this signature in database
26 changed files with 176 additions and 0 deletions

View File

@ -9,8 +9,42 @@ jobs:
- run: echo "🎉 The job was automatically triggered by a ${{ gitea.event_name }} event." - run: echo "🎉 The job was automatically triggered by a ${{ gitea.event_name }} event."
- run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by Gitea!" - run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by Gitea!"
- run: echo "🔎 The name of your branch is ${{ gitea.ref }} and your repository is ${{ gitea.repository }}." - run: echo "🔎 The name of your branch is ${{ gitea.ref }} and your repository is ${{ gitea.repository }}."
- name: Install jq
uses: dcarbone/install-jq-action@v2.0.2
- name: Install gotempl
run: |
mkdir -p $HOME/bin
wget -O $HOME/bin/gotempl https://github.com/link-society/gotempl/releases/download/v0.7.0/gotempl-linux-amd64
chmod +x $HOME/bin/gotempl
- name: Install dependencies (ubuntu only)
if: matrix.platform == 'ubuntu-20.04'
# You can remove libayatana-appindicator3-dev if you don't use the system tray feature.
run: |
sudo apt-get update
sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.0-dev libayatana-appindicator3-dev librsvg2-dev
- name: Check out repository code - name: Check out repository code
uses: actions/checkout@v3 uses: actions/checkout@v3
- name: Rust cache
uses: swatinem/rust-cache@v2
with:
workspaces: './src-tauri -> target'
- name: Install windows cross-compiling deps
run: sudo apt install nsis lld llvm
- name: And allow rust to work with them
run: |
rustup target add x86_64-pc-windows-msvc
cargo install xwin
xwin splat --output ~/.xwin
mkdir $HOME/.cargo -p
cat > $HOME/.cargo/config.toml <<<EOF
[target.x86_64-pc-windows-msvc]
linker = "lld"
rustflags = [
"-Lnative=/home/username/.xwin/crt/lib/x86_64",
"-Lnative=/home/username/.xwin/sdk/lib/um/x86_64",
"-Lnative=/home/username/.xwin/sdk/lib/ucrt/x86_64"
]
EOF
- run: echo "💡 The ${{ gitea.repository }} repository has been cloned to the runner." - run: echo "💡 The ${{ gitea.repository }} repository has been cloned to the runner."
- run: echo "🖥️ The workflow is now ready to test your code on the runner." - run: echo "🖥️ The workflow is now ready to test your code on the runner."
- name: List files in the repository - name: List files in the repository

2
.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
bin/
app/

20
apps.json Normal file
View File

@ -0,0 +1,20 @@
[
{
"appName": "Gmail",
"url": "https://gmail.com",
"version": "0.0.1",
"shortName": "gmail"
},
{
"appName": "Google Calendar",
"url": "https://calendar.google.com",
"version": "0.0.1",
"shortName": "gcal"
},
{
"appName": "Logitech Media Server",
"url": "http://192.168.1.95:8080",
"version": "0.0.1",
"shortName": "lms-client"
}
]

20
buildall.sh Normal file
View File

@ -0,0 +1,20 @@
#!/bin/sh
mkdir -p app
for i in $(seq 0 $(expr $(jq '. | length' < apps.json) - 1)); do
jq ".[$i]" < apps.json > app/data.json
cd app
#rm -rf *
mkdir -p src
for t in ../template/src/*; do
$HOME/bin/gotempl --data-json data.json< $t > src/$(basename $t)
done
cp -r ../template/src-tauri .
$HOME/bin/gotempl --data-json data.json< ../template/src-tauri/Cargo.toml > src-tauri/Cargo.toml
$HOME/bin/gotempl --data-json data.json< ../template/src-tauri/tauri.conf.json > src-tauri/tauri.conf.json
cd src-tauri
cargo tauri build
cd ..
cd ..
done

View File

@ -0,0 +1,23 @@
[package]
name = "{{ .Data.shortName }}"
version = "{{ .Data.version }}"
description = "{{ .Data.appName }}"
authors = ["Martyn's CI System"]
license = "BSD"
repository = "https://git.martyn.berlin/martyn/tauri-apps"
edition = "2023"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[build-dependencies]
tauri-build = { version = "1.5", features = [] }
[dependencies]
tauri = { version = "1.5", features = ["shell-open"] }
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
[features]
# this feature is used for production builds or when `devPath` points to the filesystem
# DO NOT REMOVE!!
custom-protocol = ["tauri/custom-protocol"]

View File

@ -0,0 +1,3 @@
fn main() {
tauri_build::build()
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 974 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 903 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 85 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

View File

@ -0,0 +1,15 @@
// Prevents additional console window on Windows in release, DO NOT REMOVE!!
#![cfg_attr(not(debug_assertions), windows_subsystem = "windows")]
// Learn more about Tauri commands at https://tauri.app/v1/guides/features/command
#[tauri::command]
fn greet(name: &str) -> String {
format!("Hello, {}! You've been greeted from Rust!", name)
}
fn main() {
tauri::Builder::default()
.invoke_handler(tauri::generate_handler![greet])
.run(tauri::generate_context!())
.expect("error while running tauri application");
}

View File

@ -0,0 +1,46 @@
{
"build": {
"beforeDevCommand": "",
"beforeBuildCommand": "",
"devPath": "../src",
"distDir": "../src",
"withGlobalTauri": true
},
"package": {
"productName": "{{ .Data.appName }}",
"version": "{{ .Data.version }}"
},
"tauri": {
"allowlist": {
"all": false,
"shell": {
"all": false,
"open": true
}
},
"bundle": {
"active": true,
"targets": "all",
"identifier": "com.gmail-tauri.dev",
"icon": [
"icons/32x32.png",
"icons/128x128.png",
"icons/128x128@2x.png",
"icons/icon.icns",
"icons/icon.ico"
]
},
"security": {
"csp": null
},
"windows": [
{
"fullscreen": false,
"resizable": true,
"title": "{{ .Data.appName }}",
"width": 800,
"height": 600
}
]
}
}

12
template/src/index.html Normal file
View File

@ -0,0 +1,12 @@
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>{{ .Data.appName }}</title>
<script type="module" src="/main.js" defer></script>
</head>
<body>
</body>
</html>

1
template/src/main.js Normal file
View File

@ -0,0 +1 @@
window.location.replace("{{ .Data.url }}");