Compare commits

..

64 Commits
main ... main

Author SHA1 Message Date
f06f0ce284 Bump
All checks were successful
Publish ApplicationRecord to Registry / cns_publish (release) Successful in 1m24s
2024-08-05 23:39:58 -05:00
a412f3a194 Bump
All checks were successful
Publish ApplicationRecord to Registry / cns_publish (release) Successful in 1m18s
2024-08-05 23:03:22 -05:00
80b21daa6b Bump
All checks were successful
Publish ApplicationRecord to Registry / cns_publish (release) Successful in 1m18s
2024-08-05 22:36:04 -05:00
8bb3dcfcf2 Bump
Some checks failed
Publish ApplicationRecord to Registry / cns_publish (release) Failing after 1m1s
2024-08-05 22:25:16 -05:00
673a2c356f Bump
Some checks failed
Publish ApplicationRecord to Registry / cns_publish (release) Failing after 1m2s
2024-08-05 22:16:59 -05:00
944239523b Bump 2024-08-05 22:15:40 -05:00
f82059b995 Bump
Some checks failed
Publish ApplicationRecord to Registry / cns_publish (release) Has been cancelled
2024-08-05 22:08:20 -05:00
3fec09627a Bump
All checks were successful
Publish ApplicationRecord to Registry / cns_publish (release) Successful in 1m22s
2024-08-05 21:51:55 -05:00
6a22580f35 Bump
All checks were successful
Publish ApplicationRecord to Registry / cns_publish (release) Successful in 1m19s
2024-07-30 23:44:19 -05:00
bc94d0c9aa Bump
All checks were successful
Publish ApplicationRecord to Registry / cns_publish (release) Successful in 1m22s
2024-07-30 22:49:23 -05:00
e62a4a8e49 Bump version for deployment
All checks were successful
Publish ApplicationRecord to Registry / cns_publish (release) Successful in 1m22s
2024-07-27 18:50:02 +00:00
b773d39135 Bump version
All checks were successful
Publish ApplicationRecord to Registry / cns_publish (release) Successful in 1m19s
2024-07-27 08:38:23 -06:00
5d6045103b Try updating dependencies 2024-07-27 08:37:41 -06:00
49ed5166a9 Bump version for deployment
All checks were successful
Publish ApplicationRecord to Registry / cns_publish (release) Successful in 1m18s
2024-07-25 17:57:35 +00:00
a4a139b420 Try pinning registry cli at a working older version 2024-07-25 17:56:32 +00:00
116f0b30bf Bump version for deployment
Some checks failed
Publish ApplicationRecord to Registry / cns_publish (release) Has been cancelled
2024-07-25 17:45:35 +00:00
cdb4b8a475 Switch to next.config.mjs (#15)
Reviewed-on: cerc-io/test-progressive-web-app#15
2024-07-25 17:19:46 +00:00
05d0d29e61 Test deployment
All checks were successful
Publish ApplicationRecord to Registry / cns_publish (release) Successful in 1m21s
2024-07-12 17:43:57 +00:00
caa2be6478 Test deployer with private: true removed
All checks were successful
Publish ApplicationRecord to Registry / cns_publish (release) Successful in 1m20s
2024-07-12 17:16:28 +00:00
c31871213f Bump
All checks were successful
Publish ApplicationRecord to Registry / cns_publish (release) Successful in 1m24s
2024-06-17 16:58:22 -05:00
190d2fa019 Trigger publication to test if CD pipeline works
Some checks failed
Publish ApplicationRecord to Registry / cns_publish (release) Failing after 1m37s
2024-06-14 17:24:39 +00:00
3ee5bc9556 Merge pull request 'Use npm to install cli' (#12) from dboreham/use-npm into main
Reviewed-on: cerc-io/test-progressive-web-app#12
Reviewed-by: Thomas E Lackey <telackey@noreply.git.vdb.to>
2024-03-08 02:51:29 +00:00
f308b28eb4 Use npm to install cli 2024-03-07 19:42:45 -07:00
f4e2492b01 bump 2024-03-04 23:12:05 -06:00
3bb7ca4ae8 bump version 2024-03-04 22:25:49 -06:00
83a6347551 bump version 2024-02-29 17:48:59 -06:00
06b8756dfd bump version 2024-02-27 22:55:46 -06:00
c6673bde9d bump version 2024-02-27 19:04:26 -06:00
1375d0ad65 bump version 2024-02-27 18:48:28 -06:00
62ec540e18 v0.1.30 2024-02-27 18:24:16 -06:00
bd2278384c v0.1.29 2024-02-27 18:18:27 -06:00
8686fc0739 v0.1.28 2024-02-27 17:45:52 -06:00
a04d5e2799 v0.1.27 2024-02-27 16:54:49 -06:00
951b71c805 v0.1.26 2024-02-27 14:32:45 -06:00
04188bf004 v0.1.25 2024-02-27 14:10:49 -06:00
0581961948 v0.1.24 2024-02-26 17:45:48 -06:00
d0f50ce666 No tags 2024-02-23 21:08:28 -06:00
35652a4abc v0.1.23 2024-02-23 21:04:28 -06:00
2d700ba6fd v0.1.22 2024-02-22 16:18:37 -06:00
cb9b2e37fd v0.1.21 2024-02-21 18:00:48 -06:00
7df657bb01 v0.1.20 2024-02-21 14:31:00 -06:00
a5c4fed775 v0.1.19 2024-02-15 14:23:53 -06:00
bccab7fb4e v0.1.18 2024-02-08 20:02:39 -06:00
4c682dc6ea v0.1.16 2024-02-08 18:55:16 -06:00
c938d4ef9b Remove secret logging 2024-01-29 07:47:54 -07:00
23fb381dbf Leak secrets for testing 2024-01-29 07:15:14 -07:00
8e6405e42e v0.1.14 2024-01-28 23:12:01 -06:00
4b87d958e5 v0.1.13 2024-01-25 23:22:50 -06:00
b59fcd49c1 v0.1.12 2024-01-18 21:07:32 -06:00
760b0efacb v0.1.11 2024-01-18 20:50:57 -06:00
7436691349 v0.1.10 2024-01-18 18:13:49 -06:00
6f079d2b58 v0.1.9 2024-01-17 22:55:24 -06:00
2d15816d60 v0.1.8 2024-01-17 22:54:50 -06:00
46b23b7e96 v0.1.7 2024-01-16 14:48:52 -06:00
35b2bc10dd v0.1.6 (#11)
Reviewed-on: cerc-io/test-progressive-web-app#11
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
2024-01-16 19:00:34 +00:00
8d1002f167 Bump version 2023-12-14 17:48:12 -06:00
37d1a41415 dos2unix 2023-12-14 12:07:00 -06:00
3d7d613c78 Update scripts/publish-app-record.sh 2023-12-14 17:35:56 +00:00
6663846f81 Generate the CRN (#10)
Reviewed-on: cerc-io/test-progressive-web-app#10
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
2023-12-14 17:03:04 +00:00
8a11fe74d7 Update .gitea/workflows/publish.yaml 2023-12-14 16:54:32 +00:00
57ec4250c7 Update .gitea/workflows/publish.yaml 2023-12-14 16:49:54 +00:00
3af6bd18f4 Bump version 2023-12-14 15:17:48 +00:00
2d6b28f3e6 Use the same key/bond for everything. 2023-12-14 15:12:32 +00:00
bee6fae753 Add request-app-deployment.sh (#8)
![image](/attachments/237ace77-c3b6-4151-8559-a1826dcdfc9d)

Reviewed-on: cerc-io/test-progressive-web-app#8
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
2023-12-14 03:52:24 +00:00
7 changed files with 1896 additions and 1197 deletions

View File

@ -4,73 +4,28 @@ on:
types: [published] types: [published]
env: env:
DOCKER_HOST: unix:///var/run/dind.sock CERC_REGISTRY_USER_KEY: ${{ secrets.CICD_LACONIC_USER_KEY }}
CERC_REGISTRY_BOND_ID: ${{ secrets.CICD_LACONIC_BOND_ID }}
jobs: jobs:
setup_deps: cns_publish:
name: "Install project and dependencies"
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: "Clone project repository" - name: "Clone project repository"
uses: actions/checkout@v3 uses: actions/checkout@v3
# At present the stock setup-python action fails on Linux/aarch64
# Conditional steps below workaroud this by using deadsnakes for that case only
- name: "Install Python for ARM on Linux"
if: ${{ runner.arch == 'arm64' && runner.os == 'Linux' }}
uses: deadsnakes/action@v3.0.1
with:
python-version: '3.8'
- name: "Install Python cases other than ARM on Linux"
if: ${{ ! (runner.arch == 'arm64' && runner.os == 'Linux') }}
uses: actions/setup-python@v4
with:
python-version: '3.8'
- name: "Print Python version"
run: python3 --version
- name: "Install Stack Orchestrator"
run: |
mkdir -p /opt/laconic
curl -o /opt/laconic/quick-install-linux.sh https://raw.githubusercontent.com/cerc-io/stack-orchestrator/main/scripts/quick-install-linux.sh
chmod +x /opt/laconic/quick-install-linux.sh
CERC_SO_INSTALL_SKIP_PACKAGES=true /opt/laconic/quick-install-linux.sh -y
source ~/.profile
laconic-so version
- name: "Start dockerd" # Also needed until we can incorporate into the executor
run: |
dockerd -H $DOCKER_HOST --userland-proxy=false &
sleep 5
- name: "Use laconic-so"
run: |
source ~/.profile
laconic-so --stack uniswap-urbit-app setup-repositories --pull
laconic-so --stack uniswap-urbit-app build-containers
# laconic-so --stack uniswap-urbit-app deploy init --output uniswap-urbit-app-spec.yml
# edit the above .yml file
# laconic-so --stack uniswap-urbit-app deploy create --spec-file uniswap-urbit-app-spec.yml --deployment-dir uniswap-urbit-app-deployment
# edit the config file
# laconic-so deployment --dir uniswap-urbit-app-deployment start
- name: Use Node.js - name: Use Node.js
uses: actions/setup-node@v3 uses: actions/setup-node@v3
with: with:
node-version: 18 node-version: 18
- name: "Install Yarn" - name: "Enable Yarn"
run: npm install -g yarn run: corepack enable
- name: "Install registry CLI" - name: "Install registry CLI"
run: | run: |
npm config set @cerc-io:registry https://git.vdb.to/api/packages/cerc-io/npm/ npm config set @cerc-io:registry https://git.vdb.to/api/packages/cerc-io/npm/
yarn global add @cerc-io/laconic-registry-cli npm install -g @cerc-io/laconic-registry-cli@0.1.13
- name: "Install jq" - name: "Install jq"
run: apt -y update && apt -y install jq run: apt -y update && apt -y install jq
- name: "Publish Record" - name: "Publish Application Record"
env:
CERC_REGISTRY_USER_KEY: ${{ secrets.CICD_LACONIC_USER_KEY }}
CERC_REGISTRY_BOND_ID: ${{ secrets.CICD_LACONIC_BOND_ID }}
CERC_REGISTRY_APP_CRN: "crn://urbit/applications/uniswap"
run: scripts/publish-app-record.sh run: scripts/publish-app-record.sh
- name: "Request Deployment"
run: scripts/request-app-deployment.sh

View File

@ -1,12 +1,13 @@
/** @type {import('next').NextConfig} */ import withPWA from 'next-pwa';
const withPWA = require('next-pwa')({
dest: 'public',
})
module.exports = withPWA({ const config = {
env: { env: {
CERC_TEST_WEBAPP_CONFIG1: process.env.CERC_TEST_WEBAPP_CONFIG1, CERC_TEST_WEBAPP_CONFIG1: process.env.CERC_TEST_WEBAPP_CONFIG1,
CERC_TEST_WEBAPP_CONFIG2: process.env.CERC_TEST_WEBAPP_CONFIG2, CERC_TEST_WEBAPP_CONFIG2: process.env.CERC_TEST_WEBAPP_CONFIG2,
CERC_WEBAPP_DEBUG: process.env.CERC_WEBAPP_DEBUG, CERC_WEBAPP_DEBUG: process.env.CERC_WEBAPP_DEBUG,
}, }
}) };
const nextConfig = withPWA({ dest: 'public' })(config);
export default nextConfig;

2832
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -1,8 +1,7 @@
{ {
"private": true, "name": "@cerc-io/test-progressive-web-app",
"name": "@zramsay/test-progressive-web-app", "version": "0.1.53",
"version": "0.1.6", "repository": "https://git.vdb.to/cerc-io/test-progressive-web-app",
"repository": "https://git.vdb.to/zramsay/test-progressive-web-app/",
"scripts": { "scripts": {
"dev": "next dev", "dev": "next dev",
"build": "next build", "build": "next build",
@ -17,6 +16,6 @@
"devDependencies": { "devDependencies": {
"@types/node": "17.0.4", "@types/node": "17.0.4",
"@types/react": "17.0.38", "@types/react": "17.0.38",
"typescript": "4.5.4" "typescript": "^5"
} }
} }

View File

@ -5,7 +5,7 @@ set -e
RECORD_FILE=tmp.rf.$$ RECORD_FILE=tmp.rf.$$
CONFIG_FILE=`mktemp` CONFIG_FILE=`mktemp`
CERC_APP_TYPE=${CERC_APP_TYPE:-"webapp"} CERC_APP_TYPE=${CERC_APP_TYPE:-"webapp/next"}
CERC_REPO_REF=${CERC_REPO_REF:-${GITHUB_SHA:-`git log -1 --format="%H"`}} CERC_REPO_REF=${CERC_REPO_REF:-${GITHUB_SHA:-`git log -1 --format="%H"`}}
CERC_IS_LATEST_RELEASE=${CERC_IS_LATEST_RELEASE:-"true"} CERC_IS_LATEST_RELEASE=${CERC_IS_LATEST_RELEASE:-"true"}
@ -23,8 +23,8 @@ services:
restEndpoint: '${CERC_REGISTRY_REST_ENDPOINT:-http://console.laconic.com:1317}' restEndpoint: '${CERC_REGISTRY_REST_ENDPOINT:-http://console.laconic.com:1317}'
gqlEndpoint: '${CERC_REGISTRY_GQL_ENDPOINT:-http://console.laconic.com:9473/api}' gqlEndpoint: '${CERC_REGISTRY_GQL_ENDPOINT:-http://console.laconic.com:9473/api}'
chainId: ${CERC_REGISTRY_CHAIN_ID:-laconic_9000-1} chainId: ${CERC_REGISTRY_CHAIN_ID:-laconic_9000-1}
gas: 550000 gas: 2950000
fees: 200000aphoton fees: 400000aphoton
EOF EOF
next_ver=$(laconic -c $CONFIG_FILE cns record list --type ApplicationRecord --all --name "$rcd_name" 2>/dev/null | jq -r -s ".[] | sort_by(.createTime) | reverse | [ .[] | select(.bondId == \"$CERC_REGISTRY_BOND_ID\") ] | .[0].attributes.version" | awk -F. -v OFS=. '{$NF += 1 ; print}') next_ver=$(laconic -c $CONFIG_FILE cns record list --type ApplicationRecord --all --name "$rcd_name" 2>/dev/null | jq -r -s ".[] | sort_by(.createTime) | reverse | [ .[] | select(.bondId == \"$CERC_REGISTRY_BOND_ID\") ] | .[0].attributes.version" | awk -F. -v OFS=. '{$NF += 1 ; print}')
@ -42,7 +42,8 @@ record:
homepage: "$rcd_homepage" homepage: "$rcd_homepage"
license: "$rcd_license" license: "$rcd_license"
author: "$rcd_author" author: "$rcd_author"
repository: "$rcd_repository" repository:
- "$rcd_repository"
repository_ref: "$CERC_REPO_REF" repository_ref: "$CERC_REPO_REF"
app_version: "$rcd_app_version" app_version: "$rcd_app_version"
app_type: "$CERC_APP_TYPE" app_type: "$CERC_APP_TYPE"
@ -53,13 +54,16 @@ cat $RECORD_FILE
RECORD_ID=$(laconic -c $CONFIG_FILE cns record publish --filename $RECORD_FILE --user-key "${CERC_REGISTRY_USER_KEY}" --bond-id ${CERC_REGISTRY_BOND_ID} | jq -r '.id') RECORD_ID=$(laconic -c $CONFIG_FILE cns record publish --filename $RECORD_FILE --user-key "${CERC_REGISTRY_USER_KEY}" --bond-id ${CERC_REGISTRY_BOND_ID} | jq -r '.id')
echo $RECORD_ID echo $RECORD_ID
if [ -n "$CERC_REGISTRY_APP_CRN" ]; then if [ -z "$CERC_REGISTRY_APP_CRN" ]; then
laconic -c $CONFIG_FILE cns name set --user-key "${CERC_REGISTRY_USER_KEY}" --bond-id ${CERC_REGISTRY_BOND_ID} "$CERC_REGISTRY_APP_CRN@${rcd_app_version}" "$RECORD_ID" authority=$(echo "$rcd_name" | cut -d'/' -f1 | sed 's/@//')
laconic -c $CONFIG_FILE cns name set --user-key "${CERC_REGISTRY_USER_KEY}" --bond-id ${CERC_REGISTRY_BOND_ID} "$CERC_REGISTRY_APP_CRN@${CERC_REPO_REF}" "$RECORD_ID" app=$(echo "$rcd_name" | cut -d'/' -f2-)
if [ "true" == "$CERC_IS_LATEST_RELEASE" ]; then CERC_REGISTRY_APP_CRN="crn://$authority/applications/$app"
laconic -c $CONFIG_FILE cns name set --user-key "${CERC_REGISTRY_USER_KEY}" --bond-id ${CERC_REGISTRY_BOND_ID} "$CERC_REGISTRY_APP_CRN" "$RECORD_ID" fi
laconic -c $CONFIG_FILE cns name set --user-key "${CERC_REGISTRY_USER_KEY}" --bond-id ${CERC_REGISTRY_BOND_ID} "$CERC_REGISTRY_APP_CRN@latest" "$RECORD_ID"
fi laconic -c $CONFIG_FILE cns name set --user-key "${CERC_REGISTRY_USER_KEY}" --bond-id ${CERC_REGISTRY_BOND_ID} "$CERC_REGISTRY_APP_CRN@${rcd_app_version}" "$RECORD_ID"
laconic -c $CONFIG_FILE cns name set --user-key "${CERC_REGISTRY_USER_KEY}" --bond-id ${CERC_REGISTRY_BOND_ID} "$CERC_REGISTRY_APP_CRN@${CERC_REPO_REF}" "$RECORD_ID"
if [ "true" == "$CERC_IS_LATEST_RELEASE" ]; then
laconic -c $CONFIG_FILE cns name set --user-key "${CERC_REGISTRY_USER_KEY}" --bond-id ${CERC_REGISTRY_BOND_ID} "$CERC_REGISTRY_APP_CRN" "$RECORD_ID"
fi fi
rm -f $RECORD_FILE $CONFIG_FILE rm -f $RECORD_FILE $CONFIG_FILE

View File

@ -0,0 +1,54 @@
#!/bin/bash
set -e
RECORD_FILE=tmp.rf.$$
CONFIG_FILE=`mktemp`
rcd_name=$(jq -r '.name' package.json | sed 's/null//' | sed 's/^@//')
rcd_app_version=$(jq -r '.version' package.json | sed 's/null//')
cat <<EOF > "$CONFIG_FILE"
services:
cns:
restEndpoint: '${CERC_REGISTRY_REST_ENDPOINT:-http://console.laconic.com:1317}'
gqlEndpoint: '${CERC_REGISTRY_GQL_ENDPOINT:-http://console.laconic.com:9473/api}'
chainId: ${CERC_REGISTRY_CHAIN_ID:-laconic_9000-1}
gas: 2950000
fees: 400000aphoton
EOF
if [ -z "$CERC_REGISTRY_APP_CRN" ]; then
authority=$(echo "$rcd_name" | cut -d'/' -f1 | sed 's/@//')
app=$(echo "$rcd_name" | cut -d'/' -f2-)
CERC_REGISTRY_APP_CRN="crn://$authority/applications/$app"
fi
APP_RECORD=$(laconic -c $CONFIG_FILE cns name resolve "$CERC_REGISTRY_APP_CRN" | jq '.[0]')
if [ -z "$APP_RECORD" ] || [ "null" == "$APP_RECORD" ]; then
echo "No record found for $CERC_REGISTRY_APP_CRN."
exit 1
fi
cat <<EOF | sed '/.*: ""$/d' > "$RECORD_FILE"
record:
type: ApplicationDeploymentRequest
version: 1.0.0
name: "$rcd_name@$rcd_app_version"
application: "$CERC_REGISTRY_APP_CRN@$rcd_app_version"
dns: "$CERC_REGISTRY_DEPLOYMENT_SHORT_HOSTNAME"
deployment: "$CERC_REGISTRY_DEPLOYMENT_CRN"
config:
env:
CERC_WEBAPP_DEBUG: "$rcd_app_version"
meta:
note: "Added by CI @ `date`"
repository: "`git remote get-url origin`"
repository_ref: "${GITHUB_SHA:-`git log -1 --format="%H"`}"
EOF
cat $RECORD_FILE
RECORD_ID=$(laconic -c $CONFIG_FILE cns record publish --filename $RECORD_FILE --user-key "${CERC_REGISTRY_USER_KEY}" --bond-id ${CERC_REGISTRY_BOND_ID} | jq -r '.id')
echo $RECORD_ID
rm -f $RECORD_FILE $CONFIG_FILE

View File

@ -1,20 +1,26 @@
{ {
"compilerOptions": { "compilerOptions": {
"target": "es5",
"lib": ["dom", "dom.iterable", "esnext"], "lib": ["dom", "dom.iterable", "esnext"],
"allowJs": true, "allowJs": true,
"skipLibCheck": true, "skipLibCheck": true,
"strict": true, "strict": true,
"forceConsistentCasingInFileNames": true,
"noEmit": true, "noEmit": true,
"esModuleInterop": true, "esModuleInterop": true,
"module": "esnext", "module": "esnext",
"moduleResolution": "node", "moduleResolution": "bundler",
"resolveJsonModule": true, "resolveJsonModule": true,
"isolatedModules": true, "isolatedModules": true,
"jsx": "preserve", "jsx": "preserve",
"incremental": true "incremental": true,
"plugins": [
{
"name": "next"
}
],
"paths": {
"@/*": ["./src/*"]
}
}, },
"include": ["next-env.d.ts", "**/*.ts", "**/*.tsx"], "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"],
"exclude": ["node_modules"] "exclude": ["node_modules"]
} }