Skip to content

Commit

Permalink
Update 01-Was-ist-das-Internet.de.md (BITS-Training#159)
Browse files Browse the repository at this point in the history
* release via github action erstellen, create-release.bat entfernt

Die Erstellung des release ist jetzt über eine github action automatisiert
  - ein push auf main oder develop erzeugt ein pre-release mit dem tag latest
  - ein push mit einem tag erzeugt ein release mit diesem tag

* add deploy_pre job to push action

* fix push action

* Update push.yml

Deploy Job für Release hinzugefügt

* Update 01-Was-ist-das-Internet.de.md

---------

Co-authored-by: Andreas <[email protected]>
Co-authored-by: Andreas H. <[email protected]>
  • Loading branch information
3 people authored Sep 13, 2024
1 parent 74924c0 commit 4124f2f
Show file tree
Hide file tree
Showing 5 changed files with 242 additions and 93 deletions.
1 change: 1 addition & 0 deletions .env
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
HUGO_VERSION=0.133.1
237 changes: 237 additions & 0 deletions .github/workflows/push.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,237 @@
# Sample workflow for building and deploying a Hugo site to GitHub Pages
name: Create Relese with Hugo

# run on push event
on:
push:

# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

# set permissions for GITHUB TOKEN
permissions:
contents: write

# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
concurrency:
group: "pages"
cancel-in-progress: false

# Default to bash
defaults:
run:
shell: bash

jobs:
# Build job
build:
# build only if push to master, develop or tags
if: ${{ (github.ref == 'refs/heads/main') || (github.ref == 'refs/heads/develop') || (startsWith(github.ref, 'refs/tags/')) }}
runs-on: ubuntu-latest
steps:
### manual hugo setup
# - name: Install Hugo CLI
# run: |
# wget -O ${{ runner.temp }}/hugo.deb https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_extended_${HUGO_VERSION}_linux-amd64.deb \
# && sudo dpkg -i ${{ runner.temp }}/hugo.deb
# - name: Install Dart Sass
# run: sudo snap install dart-sass
###
- name: Checkout
uses: actions/checkout@v4
with:
submodules: recursive
# Hugo Setup action from mareketplace
# https://github.com/marketplace/actions/hugo-setup
- name: Read .env
id: hugo-version
run: |
echo "NOW=$(date +'%Y-%m-%d_%H:%M:%S_%Z')" >> $GITHUB_ENV
cat ./.env >> $GITHUB_ENV
echo "HUGO_CACHEDIR=${{ runner.temp }}/hugo_cache" >> $GITHUB_ENV
echo "BITS_WEB=${{ runner.temp }}/BITS-${{ github.ref_name }}-webroot" >> $GITHUB_ENV
echo "BITS_FILE=${{ runner.temp }}/BITS-${{ github.ref_name }}-fileshare" >> $GITHUB_ENV
echo "BITS_MD5=${{ runner.temp }}/BITS-${{ github.ref_name }}.md5" >> $GITHUB_ENV
- name: Setup Hugo
uses: peaceiris/actions-hugo@v3
with:
hugo-version: '${{ env.HUGO_VERSION }}'
extended: true
###
- name: Build webroot with Hugo
env:
HUGO_ENVIRONMENT: production
run: |
hugo \
--cleanDestinationDir \
--destination $BITS_WEB
- name: Create webroot ZIP
run: |
cd $BITS_WEB && \
zip -r -9 \
$BITS_WEB.zip \
./* \
-x CNAME
- name: Build html with Hugo
env:
HUGO_ENVIRONMENT: html
run: |
hugo \
--cleanDestinationDir \
--destination $BITS_FILE
- name: Create fileshare ZIP
run: |
cd $BITS_FILE && \
zip -r -9 \
$BITS_FILE.zip \
./* \
-x CNAME
- name: Create md5sum file
run: |
cd ${{ runner.temp }} && \
md5sum ./BITS-*.zip >$BITS_MD5
# create pre release
### https://github.com/slord399/action-automatic-releases
- name: "Publish Prerelease"
uses: "slord399/[email protected]"
if: ${{ ! startsWith(github.ref, 'refs/tags/') }}
with:
repo_token: "${{ secrets.GITHUB_TOKEN }}"
automatic_release_tag: "latest"
prerelease: true
title: "Development Build ${{ env.NOW }}"
files: |
${{ env.BITS_WEB }}.zip
${{ env.BITS_FILE }}.zip
${{ env.BITS_MD5 }}
# create release
- name: "Publish Release"
uses: "slord399/[email protected]"
if: ${{ startsWith(github.ref, 'refs/tags/') }}
with:
repo_token: "${{ secrets.GITHUB_TOKEN }}"
prerelease: false
title: "BITS ${{ github.ref_name }}"
files: |
${{ env.BITS_WEB }}.zip
${{ env.BITS_FILE }}.zip
${{ env.BITS_MD5 }}
deploy_pre:
# deploy to gh-pages only if push to master or develop
if: ${{ (github.ref == 'refs/heads/main') || (github.ref == 'refs/heads/develop') }}
runs-on: ubuntu-latest
steps:
- name: Checkout BITS
uses: actions/checkout@v4
with:
path: BITS-Hugo
submodules: recursive
- name: Checkout pages repo_token
uses: actions/checkout@v4
with:
repository: BITS-Training/BITS-Training.github.io
path: BITS-Training.github.io
ref: test
token: ${{ secrets.BITS_RELEASE_ACTION_PAT }}
- name: Read .env
id: hugo-version
working-directory: ./BITS-Hugo
run: |
echo "NOW=$(date +'%Y-%m-%d_%H:%M:%S_%Z')" >> $GITHUB_ENV
cat ./.env >> $GITHUB_ENV
echo "HUGO_CACHEDIR=${{ runner.temp }}/hugo_cache" >> $GITHUB_ENV
- name: Setup Hugo
uses: peaceiris/actions-hugo@v3
with:
hugo-version: '${{ env.HUGO_VERSION }}'
extended: true
- name: Build develop test with Hugo
env:
HUGO_ENVIRONMENT: dev
working-directory: ./BITS-Hugo
run: |
hugo \
--cleanDestinationDir \
--destination ../BITS-Training.github.io
- name: Setup git config
run: |
git config --global user.name "GitHub Actions"
git config --global user.email "<>"
- name: Commit and push generated develop pages
working-directory: ./BITS-Training.github.io
run: |
export COMMIT_MESSAGE="BITS test ${{ github.ref}}@${{ github.sha }}"
git add .
git commit -m "$COMMIT_MESSAGE"
git push
deploy_release:
# deploy to gh-pages only if push to master or develop
if: ${{ startsWith(github.ref, 'refs/tags/') }}
runs-on: ubuntu-latest
steps:
- name: Checkout BITS
uses: actions/checkout@v4
with:
path: BITS-Hugo
submodules: recursive
- name: Checkout bits-training.de source repo with token
uses: actions/checkout@v4
with:
repository: ${{ github.repository_owner }}/bits-training.de
path: bits-training.de
ref: main
token: ${{ secrets.BITS_RELEASE_ACTION_PAT }}
- name: Checkout pages repo with token
uses: actions/checkout@v4
with:
repository: ${{ github.repository_owner }}/BITS-Training.github.io
path: BITS-Training.github.io
ref: main
token: ${{ secrets.BITS_RELEASE_ACTION_PAT }}
- name: Read .env
id: hugo-version
working-directory: ./BITS-Hugo
run: |
echo "NOW=$(date +'%Y-%m-%d_%H:%M:%S_%Z')" >> $GITHUB_ENV
cat ./.env >> $GITHUB_ENV
echo "HUGO_CACHEDIR=${{ runner.temp }}/hugo_cache" >> $GITHUB_ENV
- name: Setup Hugo
uses: peaceiris/actions-hugo@v3
with:
hugo-version: '${{ env.HUGO_VERSION }}'
extended: true
- name: Setup git config
run: |
git config --global user.name "GitHub Actions"
git config --global user.email "<>"
- name: Build release demo with Hugo
env:
HUGO_ENVIRONMENT: demo
working-directory: ./BITS-Hugo
run: |
hugo \
--cleanDestinationDir \
--destination ../bits-training.de/static/training
- name: Commit and push generated bits-training.de source
working-directory: ./bits-training.de
run: |
export COMMIT_MESSAGE="release ${{ github.ref_name }}"
git add .
git commit -m "$COMMIT_MESSAGE"
git push
- name: Build release pages with Hugo
working-directory: ./bits-training.de
run: |
hugo \
--cleanDestinationDir \
--destination ../BITS-Training.github.io
- name: Commit and push generated release pages
working-directory: ./BITS-Training.github.io
run: |
export COMMIT_MESSAGE="BITS ${{ github.ref_name }}"
git add .
git commit -m "$COMMIT_MESSAGE"
git push
2 changes: 0 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,8 +72,6 @@ Mit folgenden Befehlen werden mit hugo aus den Markdown-Textdateien die statisch
```
Die erzeugten HTML-Dateien liegen im Ordner "public".

Die im Repository enthaltene "create-release.bat" erzeugt aus einem Tag automatisch die beiden ZIP-Dateien für die GitHub-Releases.

## Weitere Infos

Hinweise zur Installation der Releases und den sinnvollen lokalen Anpassungen der Inhalte und des Layouts liegen hier:
Expand Down
8 changes: 4 additions & 4 deletions content/04 lektion internet/01-Was-ist-das-Internet.de.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,19 +14,19 @@ Das Internet ist ein schnelles, effizientes und effektives Informations- und Kom
Dabei ist es vielfältig nutzbar: als schneller Informationslieferant, als Transportmedium für E-Mails, für den Datenaustausch zwischen Dienststellen und Geschäftspartnern und vieles mehr. Der wichtigste Bestandteil des Internets ist das World Wide Web (WWW), durch das man mit einem Webbrowser „surft“.

{{%expand "Geschichte des Internets" %}}
Das Internet gibt es in seiner Urform seit den 70er Jahren des letzten Jahrhunderts. Damals verband es - nach der ursprünglicher Gründung durch das US-Verteidigungsministerium - unter dem Namen ARPANET Universitäten und Forschungseinrichtungen. Über die nächsten Jahrzehnte erfuhr es eine umfassende Erweiterung und eine Standardisierung.
Das Internet gibt es in seiner Urform seit den 70er Jahren des letzten Jahrhunderts. Damals verband es nach der ursprünglichen Gründung durch das US-Verteidigungsministerium unter dem Namen ARPANET Universitäten und Forschungseinrichtungen. Über die nächsten Jahrzehnte erfuhr es eine umfassende Erweiterung und eine Standardisierung.

Einer breiten Öffentlichkeit wurde das Internet 1993 durch den Dienst „World Wide Web“ oder kurz „WWW“ zugänglich. Das WWW ermöglicht das einfache Bereitstellen und Verlinken von Informationen über die bekannten Internetseiten.
{{% /expand%}}

{{%expand "Technischer Aufbau des World Wide Webs" %}}
Im World Wide Web (WWW) werden Daten und Informationen auf sogenannten Web-Servern bereitgestellt, die dann von beliebigen Endgeräten vom Internet aus abgefragt werden können. Zur Abfrage wird lediglich ein geeignetes Anzeige-Programm, ein sogenannter Web-Browser, benötigt. Die bekanntesten Web-Browser sind z.B. Chrome, Firefox oder Safari sowie Microsoft Edge.
Im World Wide Web (WWW) werden Daten und Informationen auf sogenannten Web-Servern bereitgestellt, die dann von beliebigen Endgeräten vom Internet aus abgefragt werden können. Zur Abfrage wird lediglich ein geeignetes Anzeige-Programm, ein sogenannter Web-Browser, benötigt. Die bekanntesten Web-Browser sind z. B. Chrome, Firefox, Safari sowie Microsoft Edge.

Die Informationen im WWW werden in einem besonderen Format auf den Web-Servern abgespeichert. Die dazu verwendete Sprache heißt HTML (Hyper Text Markup Language). Die HTML-Seiten auf den Web-Servern werden von den Web-Browsern abgerufen und grafisch dargestellt.

Dazu werden die Protokolle HTTP und HTTPS verwendet. HTTP steht dabei für „Hyper Text Transfer Protocol“. Das „S“ in HTTPS steht für „Secure“ und bedeutet, dass die Inhalte dieser Seite verschlüsselt übertragen werden, also bei der Übertragung nicht mitlesbar sind. Dies ist z.B. beim Online-Banking sehr wichtig.
Dazu werden die Protokolle HTTP und HTTPS verwendet. HTTP steht dabei für „Hyper Text Transfer Protocol“. Das „S“ in HTTPS steht für „Secure“ und bedeutet, dass die Inhalte dieser Seite verschlüsselt übertragen werden, also bei der Übertragung nicht mitlesbar sind. Dies ist z. B. beim Online-Banking sehr wichtig.

Neben dem WWW sind Messaging-Apps, Streamingdienste Spiele und E-Mails die wichtigsten Dienste im Internet.
Neben dem WWW sind Messaging-Apps, Streamingdienste, Spiele und E-Mails die wichtigsten Dienste im Internet.
{{% /expand%}}

{{% notice tip %}}
Expand Down
87 changes: 0 additions & 87 deletions create-release.bat

This file was deleted.

0 comments on commit 4124f2f

Please sign in to comment.