Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Revamping GitHub actions setup #63

Merged
merged 12 commits into from
Feb 11, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions .github/workflows/deps.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# https://github.com/actions/go-dependency-submission
name: dependency-submission
on:
push:
branches:
- main

permissions:
contents: write

jobs:
main:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v4
with:
go-version: "1.21.x"
- uses: actions/go-dependency-submission@v2
with:
go-mod-path: go.mod
63 changes: 63 additions & 0 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
name: main

on:
push:
branches:
- main
pull_request:
workflow_dispatch:

concurrency:
group: ${{ github.head_ref || github.run_id }}
cancel-in-progress: true

jobs:
tests:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
go-version: ["1.21.x"]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v4
with:
go-version: ${{ matrix.go-version }}
- run: go test -race -v -timeout 10s -short ./...

builds:
strategy:
fail-fast: true
matrix:
go-version: ["1.21.x"]
os: [ubuntu-latest, macos-latest, windows-latest]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v4
with:
go-version: stable
- name: Build fabric
run: go build -v -o ${{ runner.temp }}/fabric

golangci-lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v4
with:
go-version: "1.21.x"
- name: golangci-lint
uses: golangci/golangci-lint-action@v3
with:
version: v1.55.2

markdownlint-cli:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: nosborn/[email protected]
with:
files: docs/
config_file: .markdownlint.yaml
dot: true
82 changes: 0 additions & 82 deletions .github/workflows/snyk-security.yml

This file was deleted.

43 changes: 0 additions & 43 deletions .github/workflows/test.yml

This file was deleted.

12 changes: 12 additions & 0 deletions .markdownlint.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# https://github.com/DavidAnson/markdownlint/blob/main/schema/.markdownlint.yaml
default: true # enable all by default
MD007: # unordered list indentation
indent: 2
MD013: false # do not validate line length
MD014: false # allow $ before command output
MD024: false # allow duplicate headings, for example, "Example"
MD029: # ordered list prefix, use all ones
style: "one"
MD033: false # allow inline HTML
MD041: false # the first line is not always H1
MD025: false # because it thinks that is there is frontmatter, there should be no H1
15 changes: 3 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,44 +14,35 @@ Codifying and automating mission-critical communications with standardized and r

</div>

<div align="center">
<img src=".assets/diagram.svg" alt="fabric-diagram" width="600px"/>
</div>



> [!NOTE]
> Fabric is currently in the early stages of development, and there may be some issues. We welcome your feedback, so if you have any suggestions, ideas, or encounter bugs, please share them with us in our [Slack](https://fabric-community.slack.com/).

Fabric is an open-source configuration language and a CLI tool that enables the codification and automation of the content generation process.

[Fabric diagram TBD]
<div align="center">
<img src=".assets/diagram.svg" alt="fabric-diagram" width="600px"/>
</div>

Fabric produces rich Markdown documents from the template files that declaratively define data requirements and content structure. The templates consist of reusable blocks powered by plugins. Fabric fetches data from various external data stores, security solutions, and platforms using a collection of integrations and renders the Markdown document through a set of content blocks. Since the output file is just a Markdown document, it can be quickly rendered into PDF / HTML using any 3rd party renderer.


# Installation

[TBD]


# Usage

[TBD]


# Documentation

Visit [https://blackstork.io/fabric/docs/](https://blackstork.io/fabric/docs/) for full documentation.


# Security

Please report any suspected security vulnerabilities through GitHub's [security advisory reporting](https://github.com/blackstork-io/fabric/security/advisories/new). We take all legitimate reports seriously and will thoroughly investigate.

We kindly request that you talk to us before making any public disclosures. This ensures that no excessive information is revealed before a patch is ready and users have sufficient time to upgrade.


# License

Fabric is licensed under Apache-2.0 license. See the [LICENSE](LICENSE) file for the details.
3 changes: 1 addition & 2 deletions docs/_index.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
title: Overview
title: What is Fabric?
menuName: Docs
type: docs
menus: main
Expand All @@ -10,7 +10,6 @@ weight: 1

Fabric is an open-source configuration language and a CLI tool that enables the codification and automation of content generation process. The language includes components like documents, data definitions and content blocks.


## Get Started

- [Install]({{< ref "install.md" >}}) — how to install and run Fabric.
Expand Down
8 changes: 1 addition & 7 deletions docs/language/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,7 @@ type: docs
weight: 2
---


# Fabric Configuration Language
# Fabric Configuration Language

Fabric Configuration Language (FCL) serves as the core feature for Fabric — a powerful tool designed to streamline document generation. FCL enables users to express data requirements and template structures within configuration files with lightweight syntax.

Expand Down Expand Up @@ -48,17 +47,12 @@ config data elasticsearch {
}
```


See [Syntax](./syntax/) for more details on the FCL syntax.


## IDE Support

Since Fabric configuration language is based on HCL, IDE extensions for HCL syntax highlighting will work with Fabric files out of the box.

If you are using Microsoft VSCode, take a look at [Fabric Extension for Visual Studio Code](https://github.com/blackstork-io/vscode-fabric).

![VSCode Fabric Extension screenshot](./vscode-fabric-screenshot.png)



Loading
Loading