Moving downloads to storage bucket.

This commit is contained in:
Brad Nelson
2021-06-19 18:01:33 -07:00
parent 8c8b47d651
commit 7f44b25885
10 changed files with 109 additions and 1787 deletions

View File

@ -1,4 +1,4 @@
VERSION=7.0.6
VERSION=7.0.6.1
REVISION=$(shell git rev-parse HEAD)
REVSHORT=$(shell echo $(REVISION) | head -c 7)
@ -291,38 +291,49 @@ $(ESP32)/ESP32forth.zip: $(ESP32)/ESP32forth/ESP32forth.ino
# ---- Publish to Archive ----
ARCHIVE=gs://eforth/releases
GSUTIL=CLOUDSDK_CORE_PROJECT=eforth gsutil
GSUTIL_CP=$(GSUTIL) \
-h "Cache-Control:public, max-age=3600" \
cp -a public-read
publish-esp32: $(ESP32)/ESP32forth.zip
CLOUDSDK_CORE_PROJECT=eforth gsutil cp -a public-read \
$(GSUTIL_CP) \
$(ESP32)/ESP32forth.zip \
$(ARCHIVE)/ESP32forth-$(VERSION)-$(REVSHORT).zip
CLOUDSDK_CORE_PROJECT=eforth gsutil cp -a public-read \
$(GSUTIL_CP) \
$(ESP32)/ESP32forth.zip \
$(ARCHIVE)/ESP32forth-$(VERSION).zip
publish-linux: $(POSIX)/ueforth
CLOUDSDK_CORE_PROJECT=eforth gsutil cp -a public-read \
$(GSUTIL_CP) \
$(POSIX)/ueforth \
$(ARCHIVE)/ueforth.$(VERSION)-$(REVSHORT).linux
CLOUDSDK_CORE_PROJECT=eforth gsutil cp -a public-read \
$(ARCHIVE)/ueforth-$(VERSION)-$(REVSHORT).linux
$(GSUTIL_CP) \
$(POSIX)/ueforth \
$(ARCHIVE)/ueforth.$(VERSION).linux
$(ARCHIVE)/ueforth-$(VERSION).linux
publish-windows: $(WINDOWS)/uEf32.exe $(WINDOWS)/uEf64.exe
CLOUDSDK_CORE_PROJECT=eforth gsutil cp -a public-read \
$(GSUTIL_CP) \
$(WINDOWS)/uEf32.exe \
$(ARCHIVE)/uEf32.$(VERSION)-$(REVSHORT).exe
CLOUDSDK_CORE_PROJECT=eforth gsutil cp -a public-read \
$(ARCHIVE)/uEf32-$(VERSION)-$(REVSHORT).exe
$(GSUTIL_CP) \
$(WINDOWS)/uEf32.exe \
$(ARCHIVE)/uEf32.$(VERSION).exe
CLOUDSDK_CORE_PROJECT=eforth gsutil cp -a public-read \
$(ARCHIVE)/uEf32-$(VERSION).exe
$(GSUTIL_CP) \
$(WINDOWS)/uEf64.exe \
$(ARCHIVE)/uEf64.$(VERSION)-$(REVSHORT).exe
CLOUDSDK_CORE_PROJECT=eforth gsutil cp -a public-read \
$(ARCHIVE)/uEf64-$(VERSION)-$(REVSHORT).exe
$(GSUTIL_CP) \
$(WINDOWS)/uEf64.exe \
$(ARCHIVE)/uEf64.$(VERSION).exe
$(ARCHIVE)/uEf64-$(VERSION).exe
publish: publish-esp32 publish-linux publish-windows
publish-index: | $(GEN)
$(GSUTIL) ls gs://eforth/releases | tools/webindex.py >$(GEN)/archive.html
$(GSUTIL_CP) \
$(GEN)/archive.html \
gs://eforth/releases/index.html
$(GSUTIL) web set -m index.html -e 404.html gs://eforth
publish: publish-esp32 publish-linux publish-windows publish-index
# ---- DEPLOY ----
@ -339,21 +350,18 @@ REPLACE = common/replace.js \
UE_REPLACE = $(REPLACE) FORTH=uEForth
ESP_REPLACE = $(REPLACE) FORTH=ESP32forth
$(DEPLOY)/app.yaml: $(ESP32)/ESP32forth.zip \
$(DEPLOY)/app.yaml: $(RES)/eforth.ico \
$(wildcard site/*.html) \
site/static/eforth.css \
site/app.yaml \
site/eforth.go \
$(TARGETS) | $(DEPLOY)
rm -rf $(DEPLOY)/
mkdir -p $(DEPLOY)
cp -r site/static $(DEPLOY)/static
cp -r site/downloads $(DEPLOY)/downloads
cp $(RES)/eforth.ico $(DEPLOY)/static/favicon.ico
cp site/*.go $(DEPLOY)/
cp site/*.yaml $(DEPLOY)/
cp -r $(ESP32)/ESP32forth.zip $(DEPLOY)/downloads
cp -r $(POSIX)/ueforth $(DEPLOY)/downloads/ueforth.linux
cp -r $(WINDOWS)/uEf32.exe $(DEPLOY)/downloads/uEf32.exe
cp -r $(WINDOWS)/uEf64.exe $(DEPLOY)/downloads/uEf64.exe
cp -r $(RES)/eforth.ico $(DEPLOY)/downloads/favicon.ico
cp site/.gcloudignore $(DEPLOY)
cat site/ESP32forth.html | $(ESP_REPLACE) >$(DEPLOY)/ESP32forth.html
cat site/index.html | $(UE_REPLACE) >$(DEPLOY)/index.html

View File

@ -12,15 +12,29 @@
<h2>Download</h2>
<h3>STABLE RELEASE</h3>
<p>
<a href="downloads/ESP32forth.zip">ESP32forth.zip</a>
<a href="https://eforth.storage.googleapis.com/releases/ESP32forth-7.0.5.1.zip">ESP32forth-7.0.5.1.zip</a>
- Single .ino file ready for installation<br/>
<i>Version: {{VERSION}} Rev: {{REVISION}}</i>
<i>Version: 7.0.5.1</i>
</p>
<h3>Beta Release</h3>
<p>
<a href="https://eforth.storage.googleapis.com/releases/ESP32forth-{{VERSION}}.zip">ESP32forth-{{VERSION}}.zip</a>
- Single .ino file ready for installation<br/>
<i>Version: {{VERSION}}</i>
</p>
<hr/>
<p>
<a href="https://eforth.storage.googleapis.com/releases/" target="_blank">Release Archive</a>
- Prior Releases
</p>
<p>
<a href="https://github.com/flagxor/eforth" target="_blank">http://github.com/flagxor/eforth</a>
- Complete Source Code (under ueforth/)
- Complete Unprocessed Source Code (under ueforth/)
</p>
<h2>Install</h2>
@ -278,7 +292,8 @@ esp_camera_sensor_get ( -- sensor )
</pre>
<h5>Camera Server</h5>
<b>WIP Prototype - Not yet stable</b>
<p><b>Requires v7.0.6+</b></p>
<b>WIP Prototype - Not yet stable</b><br/>
These words are inside the <code>camera-server</code> vocabulary.
<pre>
server ( port -- ) Start an image server at port,

View File

@ -27,10 +27,6 @@ handlers:
static_dir: static
secure: always
- url: /downloads
static_dir: downloads
secure: always
- url: /.*
script: auto
secure: always

View File

@ -20,7 +20,7 @@ ESP32forth - Version 6.3 for NodeMCU ESP32S - Tweaked for the Web
</p>
<p>
<a href="downloads/ESP32forth-6.3.0.ino">ESP32forth-6.3.0.ino</a>
<a href="https://eforth.storage.googleapis.com/releases/ESP32forth-6.3.0.ino">ESP32forth-6.3.0.ino</a>
- This has Dr. Ting's v6.3 version with WebUI added in
</p>

File diff suppressed because it is too large Load Diff

View File

@ -11,12 +11,26 @@
<h2>Download</h2>
<h3>STABLE RELEASE</h3>
<p>
<a href="downloads/ueforth.linux">ueforth.linux</a>
<a href="https://eforth.storage.googleapis.com/releases/ueforth-7.0.5.1.linux">ueforth-7.0.5.1.linux</a>
- Linux 64-bit Executable µEforth<br/>
<i>Version: {{VERSION}} Rev: {{REVISION}}</i>
<i>Version: 7.0.5.1</i>
</p>
<h3>Beta Release</h3>
<p>
<a href="https://eforth.storage.googleapis.com/releases/ueforth-{{VERSION}}.linux">ueforth-{{VERSION}}.linux</a>
- Linux 64-bit Executable µEforth<br/>
<i>Version: {{VERSION}}</i>
</p>
<hr/>
<p>
<a href="https://eforth.storage.googleapis.com/releases/" target="_blank">Release Archive</a>
- Prior Releases
</p>
<p>
<a href="https://github.com/flagxor/eforth" target="_blank">http://github.com/flagxor/eforth</a>
- Complete Source Code (under ueforth)

View File

@ -5,7 +5,8 @@ server ( port -- ) Start web UI on port (used to implement webui).
</pre>
<h5>HTTP Daemon</h5>
These words are inside the <code>httpde</code> vocabulary.
<p><b>Requires v7.0.6+</b></p>
These words are inside the <code>httpd</code> vocabulary.
<pre>
server ( port -- ) Start an httpd on port.
handleClient ( -- ) Get next request.

View File

@ -19,8 +19,14 @@ h3 {
background-color: #eee;
padding: 10px;
}
h4 {
border-bottom: 2px solid #777;
width: 30%;
}
h5 {
border-bottom: 2px solid #777;
margin: 2px;
width: 30%;
}
a:link {
color: #00c;

View File

@ -11,18 +11,30 @@
<h2>Download</h2>
<h3>STABLE RELEASE</h3>
<p>
<a href="downloads/uEf32.exe">uEf32.exe</a>
<a href="https://eforth.storage.googleapis.com/releases/uEf32-7.0.5.1.exe">uEf32-7.0.5.1.exe</a>
- Window 32-bit EXE µEforth<br/>
<i>Version: {{VERSION}} Rev: {{REVISION}}</i>
<a href="https://eforth.storage.googleapis.com/releases/uEf64-7.0.5.1.exe">uEf64-7.0.5.1.exe</a>
- Window 64-bit EXE µEforth<br/>
<i>Version: 7.0.5.1 (Stable)</i>
</p>
<h3>Beta Release</h3>
<p>
<a href="https://eforth.storage.googleapis.com/releases/uEf32-{{VERSION}}.exe">uEf32-{{VERSION}}.exe</a>
- Window 32-bit EXE µEforth<br/>
<a href="https://eforth.storage.googleapis.com/releases/uEf64-{{VERSION}}.exe">uEf64-{{VERSION}}.exe</a>
- Window 64-bit EXE µEforth<br/>
<i>Version: {{VERSION}}</i>
</p>
<hr/>
<p>
<a href="downloads/uEf64.exe">uEf64.exe</a>
- Window 64-bit EXE µEforth
- Version: {{VERSION}} Rev: {{REVISION}}
<a href="https://eforth.storage.googleapis.com/releases/" target="_blank">Release Archive</a>
- Prior Releases
</p>
<p>
<a href="https://github.com/flagxor/eforth" target="_blank">http://github.com/flagxor/eforth</a>
- Complete Source Code (under ueforth)

16
ueforth/tools/webindex.py Normal file
View File

@ -0,0 +1,16 @@
#! /usr/bin/env python
import sys
sys.stdout.write("""<!DOCTYPE html>
<head>
<title>Release Archive</title>
</head>
<body>
<h1>Release Archive</h1>
""")
for line in sys.stdin.read().splitlines():
url = line.replace('gs://eforth/', 'https://eforth.storage.googleapis.com/')
name = line.replace('gs://eforth/releases/', '')
sys.stdout.write('<a href="%s">%s</a><br/>\n' % (name, url))