Compare commits
4 Commits
renovate/a
...
13d6edff33
Author | SHA1 | Date | |
---|---|---|---|
13d6edff33 | |||
bd63a0acbb | |||
2b6ab88c1d | |||
ebd125470a |
@ -1,38 +0,0 @@
|
|||||||
# The full repository name
|
|
||||||
repo: OCram85/Blog
|
|
||||||
|
|
||||||
# Service type (gitea or github)
|
|
||||||
service: gitea
|
|
||||||
|
|
||||||
# Base URL for Gitea instance if using gitea service type (optional)
|
|
||||||
# Default: https://gitea.com
|
|
||||||
base-url: https://gitea.ocram85.com
|
|
||||||
|
|
||||||
# Changelog groups and which labeled PRs to add to each group
|
|
||||||
groups:
|
|
||||||
- name: 🐛 BUGFIXES
|
|
||||||
labels:
|
|
||||||
- bug
|
|
||||||
- name: ✨ FEATURES
|
|
||||||
labels:
|
|
||||||
- feature
|
|
||||||
- name: 🛠️ ENHANCEMENTS
|
|
||||||
labels:
|
|
||||||
- enhancement
|
|
||||||
- name: 📦 BUILD
|
|
||||||
labels:
|
|
||||||
- pipeline
|
|
||||||
- name: 🤖 DEPENDENCIES
|
|
||||||
labels:
|
|
||||||
- renovate
|
|
||||||
- name: 📚 DOCS
|
|
||||||
labels:
|
|
||||||
- docs
|
|
||||||
- name: ⚙️ META
|
|
||||||
labels:
|
|
||||||
- meta
|
|
||||||
- name: 🔖 MISC
|
|
||||||
default: true
|
|
||||||
|
|
||||||
# regex indicating which labels to skip for the changelog
|
|
||||||
skip-labels: skip-changelog|backport\/.+
|
|
@ -1,10 +0,0 @@
|
|||||||
---
|
|
||||||
name: 'Default'
|
|
||||||
about: 'Use this template if nothing seems to work.'
|
|
||||||
title: ':question: '
|
|
||||||
labels:
|
|
||||||
- question
|
|
||||||
---
|
|
||||||
#### :grey_question: Simply ask your question here: :grey_question:
|
|
||||||
|
|
||||||
<!-- Take your time an think about your problem.... -->
|
|
@ -1,48 +0,0 @@
|
|||||||
---
|
|
||||||
name: 'Bug'
|
|
||||||
about: 'This template is used to report bugs!'
|
|
||||||
title: ':lady_beetle: '
|
|
||||||
labels:
|
|
||||||
- bug
|
|
||||||
---
|
|
||||||
<!--
|
|
||||||
This bug report is ony for content provided in this repository!
|
|
||||||
|
|
||||||
- Make sure you're able to reproduce the error in the latest version of this package.
|
|
||||||
- Search of already existing issues.
|
|
||||||
- Refer to the known issues and FAQ section.
|
|
||||||
-->
|
|
||||||
|
|
||||||
#### :bomb: Steps to reproduce
|
|
||||||
|
|
||||||
```bash
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||
#### :rocket: Expected behavior
|
|
||||||
|
|
||||||
```bash
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||
#### :boom: Actual behavior
|
|
||||||
|
|
||||||
```bash
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||
#### :notebook: Environment data
|
|
||||||
|
|
||||||
<!-- You can add additional environment data here--->
|
|
||||||
|
|
||||||
```bash
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||
#### :framed_picture: Screenshots
|
|
||||||
|
|
||||||
<!-- Paste your screenshots here. -->
|
|
||||||
|
|
||||||
#### :bookmark: Refs
|
|
||||||
|
|
||||||
<!-- A place for additional references to other issues and PRs -->
|
|
@ -1,16 +0,0 @@
|
|||||||
---
|
|
||||||
name: 'Enhancement'
|
|
||||||
about: 'Wite about new features.'
|
|
||||||
title: ':flying_saucer: '
|
|
||||||
labels:
|
|
||||||
- issue/enhancement
|
|
||||||
---
|
|
||||||
<!-- This issue template is used to describe whished features. -->
|
|
||||||
|
|
||||||
#### :satellite: Suggestion
|
|
||||||
|
|
||||||
#### :artificial_satellite: Implementation ideas
|
|
||||||
|
|
||||||
#### :framed_picture: Mock-up Images
|
|
||||||
|
|
||||||
#### :bookmark: Refs.
|
|
@ -1,19 +0,0 @@
|
|||||||
#### :book: Summary
|
|
||||||
|
|
||||||
<!-- Provide a summary of your changes. Describe the why and not how. -->
|
|
||||||
|
|
||||||
#### :bookmark_tabs: Test Plan
|
|
||||||
|
|
||||||
> :bulb: Select your test plan for the code changes.
|
|
||||||
|
|
||||||
- [x] CI pipeline
|
|
||||||
- [ ] Custom test
|
|
||||||
- [ ] No test plan
|
|
||||||
|
|
||||||
##### Details / Justification
|
|
||||||
|
|
||||||
<!-- Add your test details or justification for missing tests here. -->
|
|
||||||
|
|
||||||
#### :books: Additional Notes
|
|
||||||
|
|
||||||
<!-- A place for additional detail notes. -->
|
|
22
.vscode/cSpell.json
vendored
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
// cSpell Settings
|
||||||
|
{
|
||||||
|
// Version of the setting file. Always 0.1
|
||||||
|
"version": "0.1",
|
||||||
|
// language - current active spelling language
|
||||||
|
"language": "en,de,de-DE",
|
||||||
|
// words - list of words to be always considered correct
|
||||||
|
"words": [],
|
||||||
|
// flagWords - list of words to be always considered incorrect
|
||||||
|
// This is useful for offensive words and common spelling errors.
|
||||||
|
// For example "hte" should be "the"
|
||||||
|
"flagWords": [],
|
||||||
|
"dictionaryDefinitions": [
|
||||||
|
{
|
||||||
|
"name": "default",
|
||||||
|
"path": "./dictionaries/default.txt"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"dictionaries": [
|
||||||
|
"default"
|
||||||
|
]
|
||||||
|
}
|
5
.vscode/dictionaries/default.txt
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
CAFS
|
||||||
|
gitea
|
||||||
|
gitlocal
|
||||||
|
hashtable
|
||||||
|
umami
|
37
.vscode/dictionaries/project-words.txt
vendored
@ -1,37 +0,0 @@
|
|||||||
Alertmanager
|
|
||||||
CAFS
|
|
||||||
CMDB
|
|
||||||
datacenter
|
|
||||||
Eaa
|
|
||||||
Enteo
|
|
||||||
ESX
|
|
||||||
FLOWSTER
|
|
||||||
gitea
|
|
||||||
gitlocal
|
|
||||||
hashtable
|
|
||||||
IIS
|
|
||||||
ITIL
|
|
||||||
Keepalive
|
|
||||||
KIVBF
|
|
||||||
Kuma
|
|
||||||
lastmod
|
|
||||||
matomo
|
|
||||||
Netinstall
|
|
||||||
OSS
|
|
||||||
Paa
|
|
||||||
Phabricator
|
|
||||||
Pinia
|
|
||||||
SCM
|
|
||||||
SLES
|
|
||||||
Sonatype
|
|
||||||
tailwindcss
|
|
||||||
traefik
|
|
||||||
Traefik
|
|
||||||
Trivy
|
|
||||||
TSM
|
|
||||||
UCS
|
|
||||||
umami
|
|
||||||
VCS
|
|
||||||
Veyor
|
|
||||||
Xen
|
|
||||||
Zabbix
|
|
17
.vscode/extensions.json
vendored
@ -1,10 +1,11 @@
|
|||||||
{
|
{
|
||||||
"recommendations": [
|
"recommendations": [
|
||||||
"editorconfig.editorconfig",
|
"streetsidesoftware.code-spell-checker",
|
||||||
"eamodio.gitlens",
|
"streetsidesoftware.code-spell-checker-german",
|
||||||
"streetsidesoftware.code-spell-checker",
|
"editorconfig.editorconfig",
|
||||||
"streetsidesoftware.code-spell-checker-german",
|
"eamodio.gitlens",
|
||||||
"bierner.emojisense",
|
"vscode-icons-team.vscode-icons",
|
||||||
"ryanluker.vscode-coverage-gutters"
|
"redhat.vscode-yaml",
|
||||||
]
|
"bierner.markdown-emoji",
|
||||||
|
]
|
||||||
}
|
}
|
||||||
|
97
.vscode/settings.json
vendored
@ -1,57 +1,44 @@
|
|||||||
{
|
{
|
||||||
"files.encoding": "utf8",
|
"files.encoding": "utf8",
|
||||||
"files.eol": "\n",
|
"files.eol": "\n",
|
||||||
"files.trimTrailingWhitespace": true,
|
"files.trimTrailingWhitespace": true,
|
||||||
"files.insertFinalNewline": true,
|
"files.insertFinalNewline": true,
|
||||||
"editor.renderWhitespace": "boundary",
|
"editor.renderWhitespace": "boundary",
|
||||||
"editor.formatOnSave": true,
|
"editor.formatOnSave": true,
|
||||||
"editor.formatOnType": true,
|
"editor.formatOnType": true,
|
||||||
"editor.rulers": [
|
"editor.rulers": [
|
||||||
116
|
116
|
||||||
],
|
],
|
||||||
// cSpell settings for custom dictionary
|
"cSpell.enabled": true,
|
||||||
"cSpell.enabled": true,
|
"cSpell.enabledLanguageIds": [
|
||||||
"cSpell.caseSensitive": false,
|
"c",
|
||||||
"cSpell.maxNumberOfProblems": 100,
|
"cpp",
|
||||||
"cSpell.numSuggestions": 8,
|
"csharp",
|
||||||
"cSpell.minWordLength": 3,
|
"go",
|
||||||
"cSpell.allowCompoundWords": false,
|
"javascript",
|
||||||
"cSpell.ignorePaths": [
|
"javascriptreact",
|
||||||
"package-lock.json",
|
"json",
|
||||||
"node_modules",
|
"latex",
|
||||||
"vscode-extension",
|
"markdown",
|
||||||
".git/objects",
|
"php",
|
||||||
".vscode",
|
"plaintext",
|
||||||
".vscode-insiders"
|
"powershell",
|
||||||
],
|
"python",
|
||||||
"cSpell.enabledLanguageIds": [
|
"text",
|
||||||
"c",
|
"typescript",
|
||||||
"cpp",
|
"typescriptreact",
|
||||||
"csharp",
|
"yaml",
|
||||||
"go",
|
"yml"
|
||||||
"javascript",
|
],
|
||||||
"javascriptreact",
|
"cSpell.language": "en,de,de-DE",
|
||||||
"json",
|
"[yaml]": {
|
||||||
"latex",
|
"editor.insertSpaces": true,
|
||||||
"markdown",
|
"editor.tabSize": 2,
|
||||||
"php",
|
"editor.quickSuggestions": {
|
||||||
"plaintext",
|
"other": true,
|
||||||
"powershell",
|
"comments": false,
|
||||||
"python",
|
"strings": true
|
||||||
"text",
|
},
|
||||||
"typescript",
|
"editor.autoIndent": "full"
|
||||||
"typescriptreact",
|
}
|
||||||
"yaml",
|
|
||||||
"yml"
|
|
||||||
],
|
|
||||||
"cSpell.language": "en-US,de-DE",
|
|
||||||
"cSpell.customDictionaries": {
|
|
||||||
"project-words": {
|
|
||||||
"name": "project-words",
|
|
||||||
"path": "${workspaceRoot}/.vscode/dictionaries/project-words.txt",
|
|
||||||
"description": "Words used in this project",
|
|
||||||
"addWords": true
|
|
||||||
},
|
|
||||||
"custom": true
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
117
.vscode/tasks.json
vendored
Normal file
@ -0,0 +1,117 @@
|
|||||||
|
// A task runner that invokes Pester to run all Pester tests under the
|
||||||
|
// current workspace folder.
|
||||||
|
// NOTE: This Test task runner requires an updated version of Pester (>=4.0.3)
|
||||||
|
// in order for the problemMatcher to find failed test information (message, line, file).
|
||||||
|
// If you don't have that version, you can update Pester from the PowerShell Gallery
|
||||||
|
// with this command:
|
||||||
|
//
|
||||||
|
// PS C:\> Update-Module Pester
|
||||||
|
//
|
||||||
|
// If that gives an error like:
|
||||||
|
// "Module 'Pester' was not installed by using Install-Module, so it cannot be updated."
|
||||||
|
// then execute:
|
||||||
|
//
|
||||||
|
// PS C:\> Install-Module Pester -Scope CurrentUser -Force
|
||||||
|
//
|
||||||
|
// NOTE: The Clean, Build and Publish tasks require PSake. PSake can be installed
|
||||||
|
// from the PowerShell Gallery with this command:
|
||||||
|
//
|
||||||
|
// PS C:\> Install-Module PSake -Scope CurrentUser -Force
|
||||||
|
//
|
||||||
|
// Available variables which can be used inside of strings:
|
||||||
|
// ${workspaceFolder} the path of the workspace folder that contains the tasks.json file
|
||||||
|
// ${workspaceFolderBasename} the name of the workspace folder that contains the tasks.json file without any slashes (/)
|
||||||
|
// ${file} the current opened file
|
||||||
|
// ${relativeFile} the current opened file relative to the workspace folder containing the file
|
||||||
|
// ${fileBasename} the current opened file's basename
|
||||||
|
// ${fileBasenameNoExtension} the current opened file's basename without the extension
|
||||||
|
// ${fileDirname} the current opened file's dirname
|
||||||
|
// ${fileExtname} the current opened file's extension
|
||||||
|
// ${cwd} the task runner's current working directory on startup
|
||||||
|
// ${lineNumber} the current selected line number in the active file
|
||||||
|
{
|
||||||
|
"version": "2.0.0",
|
||||||
|
//"windows": {
|
||||||
|
// "options": {
|
||||||
|
// "shell": {
|
||||||
|
// // switch back to windows powershell 5.1
|
||||||
|
// // "executable": "C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe",
|
||||||
|
// "executable": "pwsh.exe",
|
||||||
|
// "args": [
|
||||||
|
// "-NoProfile",
|
||||||
|
// "-ExecutionPolicy",
|
||||||
|
// "Bypass",
|
||||||
|
// "-Command"
|
||||||
|
// ]
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
//},
|
||||||
|
//"linux": {
|
||||||
|
// "options": {
|
||||||
|
// "shell": {
|
||||||
|
// "executable": "/usr/bin/pwsh",
|
||||||
|
// "args": [
|
||||||
|
// "-NoProfile",
|
||||||
|
// "-Command"
|
||||||
|
// ]
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
//},
|
||||||
|
//"osx": {
|
||||||
|
// "options": {
|
||||||
|
// "shell": {
|
||||||
|
// "executable": "/usr/local/bin/pwsh",
|
||||||
|
// "args": [
|
||||||
|
// "-NoProfile",
|
||||||
|
// "-Command"
|
||||||
|
// ]
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
//},
|
||||||
|
"tasks": [
|
||||||
|
{
|
||||||
|
"label": "Add dictionary item",
|
||||||
|
"type": "shell",
|
||||||
|
"command": [
|
||||||
|
"$DefaultFile = Get-ChildItem -Path './.vscode/dictionaries/default.txt';",
|
||||||
|
"$Content = Get-Content -Path $DefaultFile;",
|
||||||
|
"$Content += '${input:DictionaryItem}';",
|
||||||
|
"$Content = $Content | Sort-Object -Unique;",
|
||||||
|
"Set-Content -Value $Content -Path $DefaultFile"
|
||||||
|
],
|
||||||
|
"group": "none",
|
||||||
|
"problemMatcher": [
|
||||||
|
"$pester"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "Run dev Server",
|
||||||
|
"type": "shell",
|
||||||
|
"command": [
|
||||||
|
"hugo server --buildDrafts"
|
||||||
|
],
|
||||||
|
"group": {
|
||||||
|
"kind": "test",
|
||||||
|
"isDefault": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "Build Site",
|
||||||
|
"type": "shell",
|
||||||
|
"command": [
|
||||||
|
"hugo"
|
||||||
|
],
|
||||||
|
"group": {
|
||||||
|
"kind": "build",
|
||||||
|
"isDefault": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"inputs": [
|
||||||
|
{
|
||||||
|
"id": "DictionaryItem",
|
||||||
|
"type": "promptString",
|
||||||
|
"description": "Input for dictionary file default.txt"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -38,7 +38,7 @@ pipeline:
|
|||||||
branch: master
|
branch: master
|
||||||
|
|
||||||
trivyMaster:
|
trivyMaster:
|
||||||
image: aquasec/trivy:0.51.1
|
image: aquasec/trivy:0.24.3
|
||||||
commands:
|
commands:
|
||||||
- |
|
- |
|
||||||
trivy image \
|
trivy image \
|
||||||
@ -47,6 +47,7 @@ pipeline:
|
|||||||
ocram85/blog:latest
|
ocram85/blog:latest
|
||||||
- |
|
- |
|
||||||
trivy image \
|
trivy image \
|
||||||
|
--exit-code 1 \
|
||||||
--severity HIGH,CRITICAL \
|
--severity HIGH,CRITICAL \
|
||||||
--no-progress \
|
--no-progress \
|
||||||
ocram85/blog:latest
|
ocram85/blog:latest
|
@ -3,11 +3,15 @@ depends_on:
|
|||||||
|
|
||||||
pipeline:
|
pipeline:
|
||||||
buildNext:
|
buildNext:
|
||||||
image: woodpeckerci/plugin-docker-buildx
|
image: plugins/docker
|
||||||
settings:
|
settings:
|
||||||
|
#dry_run: true
|
||||||
repo: ocram85/blog
|
repo: ocram85/blog
|
||||||
dockerfile: Dockerfile
|
dockerfile: Dockerfile
|
||||||
tags: next
|
tags: next
|
||||||
|
build_args:
|
||||||
|
- NODE_BASE=lts-buster-slim
|
||||||
|
- NGINX_BASE=1.23.1-alpine
|
||||||
username:
|
username:
|
||||||
from_secret: hub_user
|
from_secret: hub_user
|
||||||
password:
|
password:
|
||||||
@ -16,12 +20,16 @@ pipeline:
|
|||||||
event: pull_request
|
event: pull_request
|
||||||
|
|
||||||
buildNextGitea:
|
buildNextGitea:
|
||||||
image: woodpeckerci/plugin-docker-buildx
|
image: plugins/docker
|
||||||
settings:
|
settings:
|
||||||
|
#dry_run: true
|
||||||
registry: gitea.ocram85.com
|
registry: gitea.ocram85.com
|
||||||
repo: gitea.ocram85.com/ocram85/blog
|
repo: gitea.ocram85.com/ocram85/blog
|
||||||
dockerfile: Dockerfile
|
dockerfile: Dockerfile
|
||||||
tags: next
|
tags: next
|
||||||
|
build_args:
|
||||||
|
- NODE_BASE=lts-buster-slim
|
||||||
|
- NGINX_BASE=1.23.1-alpine
|
||||||
username:
|
username:
|
||||||
from_secret: gitea_user
|
from_secret: gitea_user
|
||||||
password:
|
password:
|
||||||
@ -30,7 +38,7 @@ pipeline:
|
|||||||
event: pull_request
|
event: pull_request
|
||||||
|
|
||||||
trivyNext:
|
trivyNext:
|
||||||
image: aquasec/trivy:0.51.1
|
image: aquasec/trivy:0.24.3
|
||||||
commands:
|
commands:
|
||||||
- |
|
- |
|
||||||
trivy image \
|
trivy image \
|
||||||
@ -39,6 +47,7 @@ pipeline:
|
|||||||
ocram85/blog:next
|
ocram85/blog:next
|
||||||
- |
|
- |
|
||||||
trivy image \
|
trivy image \
|
||||||
|
--exit-code 1 \
|
||||||
--severity HIGH,CRITICAL \
|
--severity HIGH,CRITICAL \
|
||||||
--no-progress \
|
--no-progress \
|
||||||
ocram85/blog:next
|
ocram85/blog:next
|
@ -1,22 +0,0 @@
|
|||||||
pipeline:
|
|
||||||
DockerBaseImage:
|
|
||||||
image: renovate/renovate:34.108-slim
|
|
||||||
commands:
|
|
||||||
- "renovate"
|
|
||||||
secrets:
|
|
||||||
- RENOVATE_TOKEN
|
|
||||||
environment:
|
|
||||||
#LOG_LEVEL: debug
|
|
||||||
RENOVATE_PLATFORM: "gitea"
|
|
||||||
RENOVATE_ENDPOINT: "https://gitea.ocram85.com"
|
|
||||||
RENOVATE_REPOSITORIES: "${CI_REPO}"
|
|
||||||
RENOVATE_LABELS: "renovate"
|
|
||||||
#RENOVATE_DRY_RUN: "full"
|
|
||||||
RENOVATE_TOKEN: "${RENOVATE_TOKEN}"
|
|
||||||
RENOVATE_GITHUB_TOKEN_WARN: "false"
|
|
||||||
when:
|
|
||||||
event:
|
|
||||||
- push
|
|
||||||
branch:
|
|
||||||
- master
|
|
||||||
- updDeps
|
|
12
Dockerfile
@ -1,4 +1,8 @@
|
|||||||
FROM node:lts-buster-slim as builder
|
# Build ARGS for base image versions
|
||||||
|
ARG NODE_BASE=lts-buster-slim
|
||||||
|
ARG NGINX_BASE=1.21.6-alpine
|
||||||
|
|
||||||
|
FROM node:${NODE_BASE} as builder
|
||||||
COPY . /src
|
COPY . /src
|
||||||
#RUN ls -la
|
#RUN ls -la
|
||||||
WORKDIR /src
|
WORKDIR /src
|
||||||
@ -6,9 +10,9 @@ WORKDIR /src
|
|||||||
RUN npm install \
|
RUN npm install \
|
||||||
&& npm run build
|
&& npm run build
|
||||||
|
|
||||||
FROM nginx:1.23.3-alpine as prod
|
FROM nginx:${NGINX_BASE} as prod
|
||||||
LABEL maintainer="marco.blessing@googlemail.com"
|
LABEL maintainer="marco.blessing@googlemail.com"
|
||||||
#HEALTHCHECK --interval=15s --timeout=5s \
|
HEALTHCHECK --interval=15s --timeout=5s \
|
||||||
# CMD wget --no-verbose --tries=1 --spider http://localhost:80/ || exit 1
|
CMD wget --no-verbose --tries=1 --spider http://localhost:80/ || exit 1
|
||||||
COPY --from=builder src/public /usr/share/nignx/html/
|
COPY --from=builder src/public /usr/share/nignx/html/
|
||||||
COPY nginx.conf /etc/nginx/nginx.conf
|
COPY nginx.conf /etc/nginx/nginx.conf
|
||||||
|
@ -43,4 +43,4 @@ The next tag is used for testing any code changes on development branches and pu
|
|||||||
|
|
||||||
This image contains the hugo based sources for my personal blog. It's made with the [Congo theme](https://github.com/jpanther/congo). The static pages are served by the included nginx server with a custom config. The custom config is needed to redirect 404 errors to a custom page.
|
This image contains the hugo based sources for my personal blog. It's made with the [Congo theme](https://github.com/jpanther/congo). The static pages are served by the included nginx server with a custom config. The custom config is needed to redirect 404 errors to a custom page.
|
||||||
|
|
||||||
You can simply run the container with `docker run -it --rm -p "8080:80" ocram85/blog:latest`.
|
You can simply run the container with `docker run -it --rm -p "8080:80" ocram85/blog:latest`
|
||||||
|
@ -6,7 +6,7 @@ weight = 1
|
|||||||
rtl = false
|
rtl = false
|
||||||
|
|
||||||
title = "OCram85.com"
|
title = "OCram85.com"
|
||||||
#logo = "img/logo_square.png"
|
logo = "img/logo_square.png"
|
||||||
description = "A personal blog about PowerShell, Automation and more."
|
description = "A personal blog about PowerShell, Automation and more."
|
||||||
# copyright = "Copy, _right?_ :thinking_face:"
|
# copyright = "Copy, _right?_ :thinking_face:"
|
||||||
|
|
||||||
|
@ -30,10 +30,10 @@
|
|||||||
pageRef = "aboutme"
|
pageRef = "aboutme"
|
||||||
weight = 40
|
weight = 40
|
||||||
|
|
||||||
#[[main]]
|
[[main]]
|
||||||
# name = "Code"
|
name = "Code"
|
||||||
# url = "https://gitea.ocram85.com"
|
url = "https://gitea.ocram85.com"
|
||||||
# weight = 50
|
weight = 50
|
||||||
|
|
||||||
|
|
||||||
# -- Footer Menu --
|
# -- Footer Menu --
|
||||||
@ -55,13 +55,8 @@
|
|||||||
url = "https://umami.ocram85.com/share/KAk7LmbU/Blog"
|
url = "https://umami.ocram85.com/share/KAk7LmbU/Blog"
|
||||||
weight = 30
|
weight = 30
|
||||||
|
|
||||||
[[footer]]
|
|
||||||
name = "Code"
|
|
||||||
url = "https://gitea.ocram85.com"
|
|
||||||
weight = 40
|
|
||||||
|
|
||||||
[[footer]]
|
[[footer]]
|
||||||
name = "CI"
|
name = "CI"
|
||||||
url = "https://ci.ocram85.com"
|
url = "https://ci.ocram85.com"
|
||||||
weight = 50
|
weight = 40
|
||||||
|
|
||||||
|
@ -8,23 +8,14 @@
|
|||||||
colorScheme = "avocado"
|
colorScheme = "avocado"
|
||||||
defaultAppearance = "dark" # valid options: light or dark
|
defaultAppearance = "dark" # valid options: light or dark
|
||||||
autoSwitchAppearance = false
|
autoSwitchAppearance = false
|
||||||
|
showAppearanceSwitcher = false
|
||||||
|
|
||||||
enableSearch = true
|
enableSearch = true
|
||||||
enableCodeCopy = true
|
enableCodeCopy = true
|
||||||
|
|
||||||
# mainSections = ["section1", "section2"]
|
# mainSections = ["section1", "section2"]
|
||||||
# robots = ""
|
# robots = ""
|
||||||
|
showScrollToTop = true
|
||||||
[header]
|
|
||||||
layout = "hamburger" # valid options: basic, hamburger, hybrid, custom
|
|
||||||
logo = "img/logo_square.png"
|
|
||||||
showTitle = false
|
|
||||||
|
|
||||||
[footer]
|
|
||||||
showCopyright = true
|
|
||||||
showThemeAttribution = true
|
|
||||||
showAppearanceSwitcher = false
|
|
||||||
showScrollToTop = true
|
|
||||||
|
|
||||||
[homepage]
|
[homepage]
|
||||||
layout = "profile" # valid options: page, profile, custom
|
layout = "profile" # valid options: page, profile, custom
|
||||||
@ -37,7 +28,7 @@ enableCodeCopy = true
|
|||||||
showBreadcrumbs = false
|
showBreadcrumbs = false
|
||||||
showDraftLabel = true
|
showDraftLabel = true
|
||||||
showEdit = true
|
showEdit = true
|
||||||
editURL = "https://gitea.ocram85.com/OCram85/Blog/_edit/psCredUpdate/content/"
|
editURL = "https://github.com/OCram85/Blog/edit/master/content/"
|
||||||
editAppendPath = true
|
editAppendPath = true
|
||||||
showHeadingAnchors = true
|
showHeadingAnchors = true
|
||||||
showPagination = true
|
showPagination = true
|
||||||
@ -46,16 +37,13 @@ enableCodeCopy = true
|
|||||||
showTableOfContents = true
|
showTableOfContents = true
|
||||||
showTaxonomies = true
|
showTaxonomies = true
|
||||||
showWordCount = true
|
showWordCount = true
|
||||||
showComments = false
|
|
||||||
sharingLinks = ["facebook", "twitter", "pinterest", "reddit", "linkedin", "email"]
|
sharingLinks = ["facebook", "twitter", "pinterest", "reddit", "linkedin", "email"]
|
||||||
|
|
||||||
[list]
|
[list]
|
||||||
showBreadcrumbs = false
|
showBreadcrumbs = false
|
||||||
showSummary = false
|
showSummary = false
|
||||||
showTableOfContents = false
|
showTableOfContents = false
|
||||||
showTaxonomies = false
|
|
||||||
groupByYear = true
|
groupByYear = true
|
||||||
paginationWidth = 1
|
|
||||||
|
|
||||||
[sitemap]
|
[sitemap]
|
||||||
excludedKinds = ["taxonomy", "term"]
|
excludedKinds = ["taxonomy", "term"]
|
||||||
|
@ -3,7 +3,7 @@ title: 'About Me'
|
|||||||
date: 2017-12-01T10:00:48+01:00
|
date: 2017-12-01T10:00:48+01:00
|
||||||
draft: false
|
draft: false
|
||||||
|
|
||||||
lastmod: 2023-01-02T06:00:00+01:00
|
lastmod: 2021-12-23T10:00:48+01:00
|
||||||
showDateUpdated: true
|
showDateUpdated: true
|
||||||
|
|
||||||
# custom overrides for pages
|
# custom overrides for pages
|
||||||
@ -22,40 +22,40 @@ showTableOfContents: false
|
|||||||
{{< icon "address-card" >}} Hi, my name is Marco Blessing and I live in the south of Germany near a city called
|
{{< icon "address-card" >}} Hi, my name is Marco Blessing and I live in the south of Germany near a city called
|
||||||
[Karlsruhe](https://goo.gl/maps/kDpo6bb9V2r).
|
[Karlsruhe](https://goo.gl/maps/kDpo6bb9V2r).
|
||||||
|
|
||||||
## {{< icon "terminal" >}} Projects
|
### {{< icon "terminal" >}} Projects
|
||||||
|
|
||||||
Take a look at my self hosted [Gitea](https://gitea.ocram85.com/explore/repos) instance to get an overview of my current work.
|
Take a look at this [Projects](/) page to get an overview of my current work.
|
||||||
|
|
||||||
## {{< icon "heart" >}} Favorite Topics
|
### {{< icon "heart" >}} Favorite Topics
|
||||||
|
|
||||||
I'm very interested in **PowerShell**, **NodeJS**, **Go** and **Software Engineering** in general.
|
I'm very interested in **PowerShell**, **NodeJS**, **Go** and **Software Engineering** in general.
|
||||||
|
|
||||||
Additionally I love building **CI/CD Stacks** with different open-source products to spread the word
|
Additionally I love building **CI/CD Stacks** with different open-source products to spread the word
|
||||||
of **DevOps** and **Containerization**.
|
of **DevOps** and **Containerization**.
|
||||||
|
|
||||||
## {{< icon "cubes" >}} Skills
|
### {{< icon "cubes" >}} Skills
|
||||||
|
|
||||||
_Here comes a list of subjects I've worked with, grouped by topics..._
|
_Here comes a list of subjects I've worked with, grouped by topics..._
|
||||||
|
|
||||||
### {{< icon "cube" >}} Container and {{< icon "docker" >}}Docker related
|
#### {{< icon "cube" >}} Container and {{< icon "docker" >}}Docker related
|
||||||
|
|
||||||
Traefik • Portainer • Docker Swarm Mode • Sonatype Nexus Repository • Aqua Security Trivy •
|
Traefik • Portainer • Docker Swarm Mode • Sonatype Nexus Repository • Aquasecurity Trivy •
|
||||||
Prometheus • Node-Exporter • cAdvisor • Alertmanager • Karma
|
Prometheus • Node-Exporter • cAdvisor • Alertmanager • Karma
|
||||||
|
|
||||||
### {{< icon "code" >}} Scripting and Programming Languages
|
#### {{< icon "code" >}} Scripting and Programming Languages
|
||||||
|
|
||||||
PowerShell • JavaScript • Go • Python • PHP • Object Pascal • C++ • Visual Basic
|
PowerShell • JavaScript • Go • Python • PHP • Object Pascal • C++ • Visual Basic
|
||||||
|
|
||||||
### {{< icon "terminal" >}} Operating Systems
|
#### {{< icon "terminal" >}} Operating Systems
|
||||||
|
|
||||||
Microsoft Windows 98SE++ • Microsoft Windows Server 2000++ •
|
Microsoft Windows 98SE++ • Microsoft Windows Server 2000++ •
|
||||||
CentOS _(and other Red Hat Enterprise Linux derivatives)_ • SLES • ubuntu
|
CentOS _(and other Red Hat Enterprise Linux derivatives)_ • SLES • ubuntu
|
||||||
|
|
||||||
### {{< icon "cloud" >}} Cloud Orchestration and Automation
|
#### {{< icon "cloud" >}} Cloud Orchestration and Automation
|
||||||
|
|
||||||
Microsoft Azure • eCloud Manager • FLOWSTER Studio • Citrix Cloud Platform • Citrix Cloud Platform Business Manager
|
Microsoft Azure • eCloud Manager • FLOWSTER Studio • Citrix Cloud Platform • Citrix Cloud Platform Business Manager
|
||||||
|
|
||||||
### {{< icon "cogs" >}} Server Roles, Features and Products
|
#### {{< icon "cogs" >}} Server Roles, Features and Products
|
||||||
|
|
||||||
Active Directory • File Server • Web Server _(IIS and Apache)_ •
|
Active Directory • File Server • Web Server _(IIS and Apache)_ •
|
||||||
DBs _(MSSQL, MySQL, PostgresSQL, Oracle 10g)_ • Backup & Restore _(IBM Tivoli Storage Manager)_ •
|
DBs _(MSSQL, MySQL, PostgresSQL, Oracle 10g)_ • Backup & Restore _(IBM Tivoli Storage Manager)_ •
|
||||||
@ -63,45 +63,13 @@ Server Hypervisor _(VMWare ESX, HyperV)_ • Terminal Server _(Microsoft, Cit
|
|||||||
Software Virtualization _(VMware ThinApp)_ • Software Packaging and Deployment _(Enteo Netinstall, Matrix42)_
|
Software Virtualization _(VMware ThinApp)_ • Software Packaging and Deployment _(Enteo Netinstall, Matrix42)_
|
||||||
• Monitoring _(Zabbix)_ • Build Engines _(Jenkins, AppVeyor)_
|
• Monitoring _(Zabbix)_ • Build Engines _(Jenkins, AppVeyor)_
|
||||||
|
|
||||||
### {{< icon "cog" >}} General Software, Frameworks
|
#### {{< icon "cog" >}} General Software
|
||||||
|
|
||||||
Node.js • Gitea • Drone.io • WoodpeckerCI • Vue.js • Quasar • tailwindcss • HAproxy • Keepalive • git SCM • Phabricator • VSCode
|
HAproxy • Keepalive • git SCM • Phabricator • VSCode • Notepad++
|
||||||
|
|
||||||
## {{< icon "briefcase" >}} Experience
|
### {{< icon "briefcase" >}} Experience
|
||||||
|
|
||||||
### {{< icon "calendar-alt" >}} 2018 - 202{{< icon "question" >}} {{< icon "building" >}} Komm.ONE as **SysOp** / **DevOps Engineer**
|
#### {{< icon "calendar-alt" >}} 2018 - 202{{< icon "question" >}} {{< icon "building" >}} [Komm.ONE](https://komm.one) as **SysOp** / **DevOps Engineer**
|
||||||
|
|
||||||
{{< icon "calendar-plus" >}} **2022** Cloud-Platform Infrastructure Project
|
|
||||||
|
|
||||||
Komm.ONE decided to create a complete new `Cloud-Platform Infrastructure`. The project started several years ago and replaced all software and hardware. Now it was our turn - So we started planning and implementing our test stage in the new environment. 2023 will challenge us to review and adapt the automation stack to changing requirements...
|
|
||||||
|
|
||||||
{{< icon "calendar-plus" >}} **2021** New Full Stack Self Service Portal
|
|
||||||
|
|
||||||
In 2021 I wanted to get back into coding and software architecture. So I started refactoring our Self Service Portal. The requirements have changed so much in the meantime that we decided to start from scratch. So we started a new full stack project containing these key elements:
|
|
||||||
|
|
||||||
| Tier | Components |
|
|
||||||
| ---- | ---------- |
|
|
||||||
| Backend | [Go](https://go.dev/) + [Node.js](https://nodejs.org/) |
|
|
||||||
| Frontend | [Vue.js 3](https://vuejs.org/) (with [Pinia](https://pinia.vuejs.org/), [Vue Router](https://router.vuejs.org/)) & [Quasar](https://quasar.dev/) |
|
|
||||||
| Data Management | CouchDB, MongoDB, SQL |
|
|
||||||
|
|
||||||
{{< icon "calendar-plus" >}} **2020** Cloud-Frontend Automation Stack
|
|
||||||
|
|
||||||
The year 2020 started with designing a new Automation Stack. My main goal war to upgrade the tech stack while
|
|
||||||
keeping the required operating an maintenance as low as possible. So I replaced some products to split the features / responsibilities:
|
|
||||||
|
|
||||||
| Role | Replaced Product | New Component |
|
|
||||||
| ---- | ---------------- | ------------- |
|
|
||||||
| Operational Platform | native Apps | Container based with [Docker](https://www.docker.com/), [traefik](https://traefik.io/traefik/), [Portainer](https://www.portainer.io/) |
|
|
||||||
| Git VCS | Phabricator | [Gitea](https://gitea.io) |
|
|
||||||
| Artifact Store | Jenkins | [Nexus Repository Manager OSS](https://www.sonatype.com/products/repository-oss-download) |
|
|
||||||
| Build Server | Jenkins | [Drone.io](https://www.drone.io/) |
|
|
||||||
| Wiki + KB | Phabricator | [Outline](https://www.getoutline.com/) |
|
|
||||||
| Landing Page | Phabricator | [Ghost CMS](https://ghost.org/) |
|
|
||||||
| Event Monitoring + Alerting | - | [Prometheus](https://github.com/prometheus/prometheus), [Alertmanager](https://github.com/prometheus/alertmanager), [cAdvisor](https://github.com/google/cadvisor), [Karma](https://github.com/prymitive/karma), [Grafana](https://github.com/grafana/grafana) |
|
|
||||||
| Service Status | - | [Uptime Kuma](https://github.com/louislam/uptime-kuma) |
|
|
||||||
| Web Analytics | matomo | [Umami](https://github.com/umami-software/umami) |
|
|
||||||
| Static Websites | Jenkins | [Hugo](https://github.com/gohugoio/hugo) |
|
|
||||||
|
|
||||||
{{< icon "calendar-plus" >}} **2019** Internal Self Service Portal
|
{{< icon "calendar-plus" >}} **2019** Internal Self Service Portal
|
||||||
|
|
||||||
@ -121,11 +89,11 @@ applications:
|
|||||||
|
|
||||||
{{< icon "calendar-plus" >}} **2018** KIVBF merged with its partners to form Komm.ONE in order
|
{{< icon "calendar-plus" >}} **2018** KIVBF merged with its partners to form Komm.ONE in order
|
||||||
to be able to offer uniform services. After adjusting the internal organizational structure, I'm now part of the
|
to be able to offer uniform services. After adjusting the internal organizational structure, I'm now part of the
|
||||||
business unit 4.2 _(Integration-, Security- & Application Management)_. My previous team was reassigned to this new
|
business unit 4.2 _(Integration-, Security- & Application Managent)_. My previous team was reassigned to this new
|
||||||
unit as well, and was renamed into CAFS _(Cloud- & Application-Frontend-Services)_. So my range of tasks changed
|
unit as well, and was renamed into CAFS _(Cloud- & Application-Frontend-Services)_. So my range of tasks changed
|
||||||
slightly.
|
slightly.
|
||||||
|
|
||||||
### {{< icon "calendar-alt" >}} 2012 - 2018 {{< icon "building" >}} KIVBF as **SysOp** / **DevOps Engineer**
|
#### {{< icon "calendar-alt" >}} 2012 - 2018 {{< icon "building" >}} [KIVBF](https://www.kivbf.de) as **SysOp** / **DevOps Engineer**
|
||||||
|
|
||||||
{{< icon "calendar-plus" >}} **2015** In 2015 I started automating several platform and workload
|
{{< icon "calendar-plus" >}} **2015** In 2015 I started automating several platform and workload
|
||||||
related use cases. Unfortunately it's closed source, so I can't talk about details. But to give a glimpse at the
|
related use cases. Unfortunately it's closed source, so I can't talk about details. But to give a glimpse at the
|
||||||
@ -148,12 +116,12 @@ It was a great place to get to know such large environment and I finally started
|
|||||||
implemented the monitoring system [Zabbix](http://www.zabbix.com/). Unfortunately I couldn't find any extension to
|
implemented the monitoring system [Zabbix](http://www.zabbix.com/). Unfortunately I couldn't find any extension to
|
||||||
monitor out IBM tape library or TSM data itself. So I developed own interfaces therefore.
|
monitor out IBM tape library or TSM data itself. So I developed own interfaces therefore.
|
||||||
|
|
||||||
### {{< icon "calendar-alt" >}} 2008 - 2012 {{< icon "building" >}} Pforzheim municipal administration as **SysOp**
|
#### {{< icon "calendar-alt" >}} 2008 - 2012 {{< icon "building" >}} [Pforzheim municipal administration](https://www.pforzheim.de/) as **SysOp**
|
||||||
|
|
||||||
At the municipal administration of Pforzheim I was responsible for the **Software Packaging and Deployment**,
|
At the municipal administration of Pforzheim I was responsible for the**Software Packaging and Deployment**,
|
||||||
**MS-SQL Servers** and **Web Hosting**.
|
**MS-SQL Servers** and **Web Hosting**.
|
||||||
|
|
||||||
## {{< icon "graduation-cap" >}} Education
|
### {{< icon "graduation-cap" >}} Education
|
||||||
|
|
||||||
I successfully finished two undergraduate trainings as **IT Specialist For Application Development** and
|
I successfully finished two undergraduate trainings as **IT Specialist For Application Development** and
|
||||||
**Management Assistant in IT-Systems**.
|
**Management Assistant in IT-Systems**.
|
||||||
|
Before Width: | Height: | Size: 35 KiB After Width: | Height: | Size: 35 KiB |
@ -16,6 +16,8 @@ tags: ['pihole', 'swarm', 'stack']
|
|||||||
# sharingLinks: [null]
|
# sharingLinks: [null]
|
||||||
---
|
---
|
||||||
|
|
||||||
|
{{< figure src="black-hole.jpg" width="600" height="800" caption="Photo by Kamesh Vedula on Unsplash." >}}
|
||||||
|
|
||||||
## Intro
|
## Intro
|
||||||
|
|
||||||
Many of you already know [Pi-hole](https://pi-hole.net/) as a trusted DNS firewall solution in your home labs. But
|
Many of you already know [Pi-hole](https://pi-hole.net/) as a trusted DNS firewall solution in your home labs. But
|
||||||
|
Before Width: | Height: | Size: 55 KiB |
@ -1,59 +0,0 @@
|
|||||||
---
|
|
||||||
title: "✨ PSCredentialStore 1.1.0 is released"
|
|
||||||
date: 2022-09-21T10:14:18+02:00
|
|
||||||
draft: false
|
|
||||||
|
|
||||||
categories: ['Projects']
|
|
||||||
tags: ['PSCredentialStore']
|
|
||||||
|
|
||||||
# lastmod: 2022-09-21T10:14:18+02:00
|
|
||||||
# showDateUpdated: true
|
|
||||||
|
|
||||||
# custom overrides for pages
|
|
||||||
# showDate: false
|
|
||||||
# showAuthor: false
|
|
||||||
# showWordCount: false
|
|
||||||
# showReadingTime: false
|
|
||||||
# showTableOfContents: false
|
|
||||||
# showTaxonomies: true
|
|
||||||
# showEdit: false
|
|
||||||
# sharingLinks: [null]
|
|
||||||
---
|
|
||||||
|
|
||||||
<p align="right">
|
|
||||||
<img src="https://forthebadge.com/images/badges/built-with-love.svg">
|
|
||||||
</p>
|
|
||||||
|
|
||||||
Today I'm proud to present the release of PSCredentialStore version [1.1.0](https://www.powershellgallery.com/packages/PSCredentialStore/1.1.0).
|
|
||||||
|
|
||||||
This version was mainly focused on updating the build pipeline and codebase.
|
|
||||||
So let me explain the changes in detail:
|
|
||||||
|
|
||||||
- 🧰 Reworked the build pipeline and replace Travis, AppVeyor by Drone.IO.
|
|
||||||
- 🧰 Updated the PowerShell style to the lates community standards.
|
|
||||||
- 🧰 Migrated from Github to [self hosted Gitea](https://gitea.ocram85.com/OCram85/PSCredentialStore).
|
|
||||||
- 🧰 Migrated to self hosted Drone and Woodpecker CI.
|
|
||||||
- 🧰 Updated Pester unit tests to Pester5+ syntax.
|
|
||||||
- 💣 Changed from MIT to GNU AGPLv3 license.
|
|
||||||
- 🧰 Removed the optional dependency helper.
|
|
||||||
- 📦 Updated embedded OpenSSL (LibreSSL) files to version 3.5.3.
|
|
||||||
- Started building and deploying the LibreSSL windows portable version on Github: https://github.com/OCram85/libressl-portable.
|
|
||||||
- 🧰 Added gitea project template files for issues and pull requests.
|
|
||||||
- 🤖 Implemented [DroneHelper](https://gitea.ocram85.com/OCram85/DroneHelper) base Drone pipeline.
|
|
||||||
|
|
||||||
Additionally we fixed some issues and added new connection types:
|
|
||||||
|
|
||||||
- 🌟 Added CiscoUCSCentral connection type
|
|
||||||
- 🐛 Fixed `Test-CredentialStoreItem` output
|
|
||||||
- 🐛 Fixed CiscoUCS connection
|
|
||||||
|
|
||||||
You can find the PSCredential store at [PowerShell Gallery](https://www.powershellgallery.com/packages/PSCredentialStore)
|
|
||||||
and [gitea.ocram85.com](https://gitea.ocram85.com/OCram85/PSCredentialStore/releases).
|
|
||||||
|
|
||||||
Feel free to install or upgrade to the latest version with the following command.
|
|
||||||
|
|
||||||
```powershell
|
|
||||||
Install-Module -Name 'PSCredentialStore' -Force
|
|
||||||
```
|
|
||||||
|
|
||||||

|
|
@ -19,6 +19,8 @@ tags: ['ModuleBase', 'config']
|
|||||||
# sharingLinks: [null]
|
# sharingLinks: [null]
|
||||||
---
|
---
|
||||||
|
|
||||||
|
 on [Unsplash](https://unsplash.com)')
|
||||||
|
|
||||||
## 🖼️ Intro
|
## 🖼️ Intro
|
||||||
|
|
||||||
This article explains with a practical example how to determine and use the current module base path.
|
This article explains with a practical example how to determine and use the current module base path.
|
||||||
|
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
@ -18,6 +18,8 @@ showDateUpdated: true
|
|||||||
# sharingLinks: [null]
|
# sharingLinks: [null]
|
||||||
---
|
---
|
||||||
|
|
||||||
|
 on [Unsplash](https://unsplash.com)')
|
||||||
|
|
||||||
## 🖼️ Intro
|
## 🖼️ Intro
|
||||||
|
|
||||||
This post explains how to use `PSCustomObject`s as function parameters. We compare the basic usage with an
|
This post explains how to use `PSCustomObject`s as function parameters. We compare the basic usage with an
|
||||||
|
Before Width: | Height: | Size: 78 KiB After Width: | Height: | Size: 78 KiB |
@ -18,6 +18,9 @@ tags: ['class', 'read-only', 'properties']
|
|||||||
# showEdit: false
|
# showEdit: false
|
||||||
# sharingLinks: [null]
|
# sharingLinks: [null]
|
||||||
---
|
---
|
||||||
|
|
||||||
|
{{< figure src="vader_cube.png" width="800" height="800">}}
|
||||||
|
|
||||||
{{< note >}}
|
{{< note >}}
|
||||||
If you're not familiar with Powershell classes I suggest you reading this awesome blog article from Michael Willis
|
If you're not familiar with Powershell classes I suggest you reading this awesome blog article from Michael Willis
|
||||||
[Powershell v5 Classes & Concepts](https://xainey.github.io/2016/powershell-classes-and-concepts/). It covers
|
[Powershell v5 Classes & Concepts](https://xainey.github.io/2016/powershell-classes-and-concepts/). It covers
|
||||||
|
Before Width: | Height: | Size: 476 KiB After Width: | Height: | Size: 476 KiB |
@ -9,6 +9,8 @@ tags: ['resources']
|
|||||||
draft: false
|
draft: false
|
||||||
---
|
---
|
||||||
|
|
||||||
|
{{< figure src="res-posh.jpg" width="1200" height="800" caption="Photo by Eugenio Mazzone on Unsplash." >}}
|
||||||
|
|
||||||
## The Journey Begins Now Young Novice
|
## The Journey Begins Now Young Novice
|
||||||
|
|
||||||
In this section you find the most basic stuff. It's aimed to help beginners who just got in touch with PowerShell.
|
In this section you find the most basic stuff. It's aimed to help beginners who just got in touch with PowerShell.
|
||||||
|
Before Width: | Height: | Size: 86 KiB After Width: | Height: | Size: 86 KiB |
@ -2,6 +2,6 @@
|
|||||||
async
|
async
|
||||||
defer
|
defer
|
||||||
data-website-id="3e944f0b-6377-4a23-8bdd-64b408d13611"
|
data-website-id="3e944f0b-6377-4a23-8bdd-64b408d13611"
|
||||||
src="https://umami.ocram85.com/script.js"
|
src="https://umami.ocram85.com/umami.js"
|
||||||
data-domains="ocram85.com"
|
data-domains="ocram85.com"
|
||||||
></script>
|
></script>
|
||||||
|
@ -5,7 +5,7 @@ http {
|
|||||||
include mime.types;
|
include mime.types;
|
||||||
|
|
||||||
server {
|
server {
|
||||||
listen 0.0.0.0:80;
|
listen 80;
|
||||||
root /usr/share/nignx/html;
|
root /usr/share/nignx/html;
|
||||||
index index.html;
|
index index.html;
|
||||||
error_page 404 /404.html;
|
error_page 404 /404.html;
|
||||||
|
1009
package-lock.json
generated
@ -10,7 +10,6 @@
|
|||||||
"lint:markdown": "markdownlint \"*.md\" \"content/**/*.md\"",
|
"lint:markdown": "markdownlint \"*.md\" \"content/**/*.md\"",
|
||||||
"start": "npm run server",
|
"start": "npm run server",
|
||||||
"server": "exec-bin node_modules/.bin/hugo/hugo server --bind=0.0.0.0 -D",
|
"server": "exec-bin node_modules/.bin/hugo/hugo server --bind=0.0.0.0 -D",
|
||||||
"arkanum": "exec-bin node_modules/.bin/hugo/hugo server --bind=0.0.0.0 -D --appendPort=false --baseURL https://arkanum-dev.ocram85.com --port 1313",
|
|
||||||
"test": "npm run lint:markdown",
|
"test": "npm run lint:markdown",
|
||||||
"postinstall": "hugo-installer --version otherDependencies.hugo --extended --destination node_modules/.bin/hugo",
|
"postinstall": "hugo-installer --version otherDependencies.hugo --extended --destination node_modules/.bin/hugo",
|
||||||
"new:post": "exec-bin node_modules/.bin/hugo/hugo new"
|
"new:post": "exec-bin node_modules/.bin/hugo/hugo new"
|
||||||
@ -27,9 +26,9 @@
|
|||||||
"homepage": "https://github.com/OCram85/Blog#readme",
|
"homepage": "https://github.com/OCram85/Blog#readme",
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"exec-bin": "^1.0.0",
|
"exec-bin": "^1.0.0",
|
||||||
"hugo-installer": "^4.0.0",
|
"hugo-installer": "^3.1.0",
|
||||||
"markdownlint-cli": "^0.33.0",
|
"markdownlint-cli": "^0.31.1",
|
||||||
"rimraf": "^4.0.0"
|
"rimraf": "^3.0.2"
|
||||||
},
|
},
|
||||||
"otherDependencies": {
|
"otherDependencies": {
|
||||||
"hugo": "0.91.1"
|
"hugo": "0.91.1"
|
||||||
|
@ -1,18 +0,0 @@
|
|||||||
{
|
|
||||||
"onboardingConfig": {
|
|
||||||
"extends": [
|
|
||||||
"config:base"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"dependencyDashboard": true,
|
|
||||||
"docker": {
|
|
||||||
"enabled": true
|
|
||||||
},
|
|
||||||
"docker-compose": {
|
|
||||||
"enabled": true
|
|
||||||
},
|
|
||||||
"woodpecker": {
|
|
||||||
"enabled": true,
|
|
||||||
"fileMatch": ["^.woodpecker\/.*.yml$"]
|
|
||||||
}
|
|
||||||
}
|
|