4 Commits

Author SHA1 Message Date
13d6edff33 add CI link
All checks were successful
ci/woodpecker/pr/test Pipeline was successful
ci/woodpecker/push/test Pipeline was successful
ci/woodpecker/pr/master Pipeline was successful
ci/woodpecker/push/next Pipeline was successful
ci/woodpecker/push/master Pipeline was successful
ci/woodpecker/pr/next Pipeline was successful
2022-09-13 14:05:51 +02:00
bd63a0acbb add code link 2022-09-13 14:05:14 +02:00
2b6ab88c1d fix github refs 2022-09-13 14:04:57 +02:00
ebd125470a add gitea link
All checks were successful
ci/woodpecker/push/test Pipeline was successful
ci/woodpecker/push/next Pipeline was successful
ci/woodpecker/push/master Pipeline was successful
ci/woodpecker/pr/test Pipeline was successful
ci/woodpecker/pr/master Pipeline was successful
ci/woodpecker/pr/next Pipeline was successful
2022-09-13 13:53:19 +02:00
35 changed files with 646 additions and 966 deletions

View File

@ -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\/.+

View File

@ -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.... -->

View File

@ -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 -->

View File

@ -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.

View File

@ -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
View 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"
]
}

View File

@ -1,8 +1,5 @@
CAFS
gitea
gitlocal
hashtable
lastmod
UCS
umami
Veyor
CAFS
gitea
gitlocal
hashtable
umami

View File

@ -1,10 +1,11 @@
{
"recommendations": [
"editorconfig.editorconfig",
"eamodio.gitlens",
"streetsidesoftware.code-spell-checker",
"streetsidesoftware.code-spell-checker-german",
"bierner.emojisense",
"ryanluker.vscode-coverage-gutters"
]
"recommendations": [
"streetsidesoftware.code-spell-checker",
"streetsidesoftware.code-spell-checker-german",
"editorconfig.editorconfig",
"eamodio.gitlens",
"vscode-icons-team.vscode-icons",
"redhat.vscode-yaml",
"bierner.markdown-emoji",
]
}

97
.vscode/settings.json vendored
View File

@ -1,57 +1,44 @@
{
"files.encoding": "utf8",
"files.eol": "\n",
"files.trimTrailingWhitespace": true,
"files.insertFinalNewline": true,
"editor.renderWhitespace": "boundary",
"editor.formatOnSave": true,
"editor.formatOnType": true,
"editor.rulers": [
116
],
// cSpell settings for custom dictionary
"cSpell.enabled": true,
"cSpell.caseSensitive": false,
"cSpell.maxNumberOfProblems": 100,
"cSpell.numSuggestions": 8,
"cSpell.minWordLength": 3,
"cSpell.allowCompoundWords": false,
"cSpell.ignorePaths": [
"package-lock.json",
"node_modules",
"vscode-extension",
".git/objects",
".vscode",
".vscode-insiders"
],
"cSpell.enabledLanguageIds": [
"c",
"cpp",
"csharp",
"go",
"javascript",
"javascriptreact",
"json",
"latex",
"markdown",
"php",
"plaintext",
"powershell",
"python",
"text",
"typescript",
"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
}
"files.encoding": "utf8",
"files.eol": "\n",
"files.trimTrailingWhitespace": true,
"files.insertFinalNewline": true,
"editor.renderWhitespace": "boundary",
"editor.formatOnSave": true,
"editor.formatOnType": true,
"editor.rulers": [
116
],
"cSpell.enabled": true,
"cSpell.enabledLanguageIds": [
"c",
"cpp",
"csharp",
"go",
"javascript",
"javascriptreact",
"json",
"latex",
"markdown",
"php",
"plaintext",
"powershell",
"python",
"text",
"typescript",
"typescriptreact",
"yaml",
"yml"
],
"cSpell.language": "en,de,de-DE",
"[yaml]": {
"editor.insertSpaces": true,
"editor.tabSize": 2,
"editor.quickSuggestions": {
"other": true,
"comments": false,
"strings": true
},
"editor.autoIndent": "full"
}
}

117
.vscode/tasks.json vendored Normal file
View 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"
}
]
}

View File

@ -38,7 +38,7 @@ pipeline:
branch: master
trivyMaster:
image: aquasec/trivy:0.35.0
image: aquasec/trivy:0.24.3
commands:
- |
trivy image \
@ -47,6 +47,7 @@ pipeline:
ocram85/blog:latest
- |
trivy image \
--exit-code 1 \
--severity HIGH,CRITICAL \
--no-progress \
ocram85/blog:latest

View File

@ -3,11 +3,15 @@ depends_on:
pipeline:
buildNext:
image: woodpeckerci/plugin-docker-buildx
image: plugins/docker
settings:
#dry_run: true
repo: ocram85/blog
dockerfile: Dockerfile
tags: next
build_args:
- NODE_BASE=lts-buster-slim
- NGINX_BASE=1.23.1-alpine
username:
from_secret: hub_user
password:
@ -16,12 +20,16 @@ pipeline:
event: pull_request
buildNextGitea:
image: woodpeckerci/plugin-docker-buildx
image: plugins/docker
settings:
#dry_run: true
registry: gitea.ocram85.com
repo: gitea.ocram85.com/ocram85/blog
dockerfile: Dockerfile
tags: next
build_args:
- NODE_BASE=lts-buster-slim
- NGINX_BASE=1.23.1-alpine
username:
from_secret: gitea_user
password:
@ -30,7 +38,7 @@ pipeline:
event: pull_request
trivyNext:
image: aquasec/trivy:0.35.0
image: aquasec/trivy:0.24.3
commands:
- |
trivy image \
@ -39,6 +47,7 @@ pipeline:
ocram85/blog:next
- |
trivy image \
--exit-code 1 \
--severity HIGH,CRITICAL \
--no-progress \
ocram85/blog:next

View File

@ -1,22 +0,0 @@
pipeline:
DockerBaseImage:
image: renovate/renovate:34.63-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

View File

@ -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
#RUN ls -la
WORKDIR /src
@ -6,7 +10,7 @@ WORKDIR /src
RUN npm install \
&& npm run build
FROM nginx:1.23.3-alpine as prod
FROM nginx:${NGINX_BASE} as prod
LABEL maintainer="marco.blessing@googlemail.com"
HEALTHCHECK --interval=15s --timeout=5s \
CMD wget --no-verbose --tries=1 --spider http://localhost:80/ || exit 1

View File

@ -6,7 +6,7 @@ weight = 1
rtl = false
title = "OCram85.com"
#logo = "img/logo_square.png"
logo = "img/logo_square.png"
description = "A personal blog about PowerShell, Automation and more."
# copyright = "Copy, _right?_ :thinking_face:"

View File

@ -30,10 +30,10 @@
pageRef = "aboutme"
weight = 40
#[[main]]
# name = "Code"
# url = "https://gitea.ocram85.com"
# weight = 50
[[main]]
name = "Code"
url = "https://gitea.ocram85.com"
weight = 50
# -- Footer Menu --
@ -55,13 +55,8 @@
url = "https://umami.ocram85.com/share/KAk7LmbU/Blog"
weight = 30
[[footer]]
name = "Code"
url = "https://gitea.ocram85.com"
weight = 40
[[footer]]
name = "CI"
url = "https://ci.ocram85.com"
weight = 50
weight = 40

View File

@ -8,23 +8,14 @@
colorScheme = "avocado"
defaultAppearance = "dark" # valid options: light or dark
autoSwitchAppearance = false
showAppearanceSwitcher = false
enableSearch = true
enableCodeCopy = true
# mainSections = ["section1", "section2"]
# robots = ""
[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
showScrollToTop = true
[homepage]
layout = "profile" # valid options: page, profile, custom
@ -37,7 +28,7 @@ enableCodeCopy = true
showBreadcrumbs = false
showDraftLabel = true
showEdit = true
editURL = "https://gitea.ocram85.com/OCram85/Blog/_edit/psCredUpdate/content/"
editURL = "https://github.com/OCram85/Blog/edit/master/content/"
editAppendPath = true
showHeadingAnchors = true
showPagination = true
@ -46,16 +37,13 @@ enableCodeCopy = true
showTableOfContents = true
showTaxonomies = true
showWordCount = true
showComments = false
sharingLinks = ["facebook", "twitter", "pinterest", "reddit", "linkedin", "email"]
[list]
showBreadcrumbs = false
showSummary = false
showTableOfContents = false
showTaxonomies = false
groupByYear = true
paginationWidth = 1
[sitemap]
excludedKinds = ["taxonomy", "term"]

View File

Before

Width:  |  Height:  |  Size: 35 KiB

After

Width:  |  Height:  |  Size: 35 KiB

View File

@ -16,6 +16,8 @@ tags: ['pihole', 'swarm', 'stack']
# sharingLinks: [null]
---
{{< figure src="black-hole.jpg" width="600" height="800" caption="Photo by Kamesh Vedula on Unsplash." >}}
## Intro
Many of you already know [Pi-hole](https://pi-hole.net/) as a trusted DNS firewall solution in your home labs. But

Binary file not shown.

Before

Width:  |  Height:  |  Size: 55 KiB

View File

@ -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
```
![forthebadge](https://forthebadge.com/images/badges/contains-17-coffee-cups.svg)

View File

@ -19,6 +19,8 @@ tags: ['ModuleBase', 'config']
# sharingLinks: [null]
---
![note](note.jpg 'Photo by [Sigmund](https://unsplash.com/@sigmund) on [Unsplash](https://unsplash.com)')
## 🖼️ Intro
This article explains with a practical example how to determine and use the current module base path.

View File

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

@ -18,6 +18,8 @@ showDateUpdated: true
# sharingLinks: [null]
---
![ship](ship.jpg 'Photo by [Rod Long](https://unsplash.com/@rodlong) on [Unsplash](https://unsplash.com)')
## 🖼️ Intro
This post explains how to use `PSCustomObject`s as function parameters. We compare the basic usage with an

View File

Before

Width:  |  Height:  |  Size: 78 KiB

After

Width:  |  Height:  |  Size: 78 KiB

View File

@ -18,6 +18,9 @@ tags: ['class', 'read-only', 'properties']
# showEdit: false
# sharingLinks: [null]
---
{{< figure src="vader_cube.png" width="800" height="800">}}
{{< note >}}
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

View File

Before

Width:  |  Height:  |  Size: 476 KiB

After

Width:  |  Height:  |  Size: 476 KiB

View File

@ -9,6 +9,8 @@ tags: ['resources']
draft: false
---
{{< figure src="res-posh.jpg" width="1200" height="800" caption="Photo by Eugenio Mazzone on Unsplash." >}}
## 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.

View File

Before

Width:  |  Height:  |  Size: 86 KiB

After

Width:  |  Height:  |  Size: 86 KiB

View File

@ -1,28 +0,0 @@
---
title: "✨ Arkanum 0.2.0 is released"
date: 2023-01-04T10:00:00+02:00
draft: false
section: 'posts'
categories: ['Projects']
tags: ['Arkanum']
# 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 [Arkanum](https://gitea.ocram85.com/CodeServer/arkanum) version [0.2.0](https://gitea.ocram85.com/CodeServer/-/packages/container/arkanum/0.2.0).

1009
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -10,7 +10,6 @@
"lint:markdown": "markdownlint \"*.md\" \"content/**/*.md\"",
"start": "npm run server",
"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",
"postinstall": "hugo-installer --version otherDependencies.hugo --extended --destination node_modules/.bin/hugo",
"new:post": "exec-bin node_modules/.bin/hugo/hugo new"
@ -27,8 +26,8 @@
"homepage": "https://github.com/OCram85/Blog#readme",
"devDependencies": {
"exec-bin": "^1.0.0",
"hugo-installer": "^4.0.0",
"markdownlint-cli": "^0.32.0",
"hugo-installer": "^3.1.0",
"markdownlint-cli": "^0.31.1",
"rimraf": "^3.0.2"
},
"otherDependencies": {

View File

@ -1,18 +0,0 @@
{
"onboardingConfig": {
"extends": [
"config:base"
]
},
"dependencyDashboard": true,
"docker": {
"enabled": true
},
"docker-compose": {
"enabled": true
},
"woodpecker": {
"enabled": true,
"fileMatch": ["^.woodpecker\/.*.yml$"]
}
}