Skip to content

Commit a84b926

Browse files
Merge branch 'main' into Zclsd_extension
Signed-off-by: Shehroz Kashif <[email protected]>
2 parents d49cdeb + a31a78e commit a84b926

File tree

2,012 files changed

+38838
-10987
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

2,012 files changed

+38838
-10987
lines changed

.clang-format

+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
---
2+
BasedOnStyle: Google
3+
IndentWidth: 2
4+
Language: Cpp
5+
ColumnLimit: 100
6+
# AlignConsecutiveAssignments: true
7+
# AlignConsecutiveDeclarations: true
8+
# AlignEscapedNewlines: Right
9+
# AlignOperands: true
10+
# AlignTrailingComments: true
11+
# AllowShortBlocksOnASingleLine: false
12+
# AllowShortCaseLabelsOnASingleLine: true
13+
# AlwaysBreakTemplateDeclarations: Yes
14+
15+
FixNamespaceComments: true
16+
NamespaceIndentation: All

.devcontainer/Dockerfile

+31-14
Original file line numberDiff line numberDiff line change
@@ -5,20 +5,37 @@ ENV DEBIAN_FRONTEND=noninteractive
55
WORKDIR /workspace
66

77
RUN export DEBIAN_FRONTEND=noninteractive
8-
RUN apt-get update
9-
RUN apt-get install -y --no-install-recommends git gh
10-
RUN apt-get install -y --no-install-recommends less
11-
RUN apt-get install -y --no-install-recommends python3
12-
RUN apt-get install -y --no-install-recommends python3.12-venv
13-
RUN apt-get install -y --no-install-recommends python3-pip
14-
RUN apt-get install -y --no-install-recommends build-essential
15-
RUN apt-get install -y --no-install-recommends ruby
16-
RUN apt-get install -y --no-install-recommends ruby-dev
17-
RUN apt-get install -y --no-install-recommends bundler
18-
RUN apt-get install -y --no-install-recommends nodejs
19-
RUN apt-get install -y --no-install-recommends npm
20-
RUN apt-get install -y --no-install-recommends ditaa
21-
RUN apt-get install -y --no-install-recommends libyaml-dev
8+
9+
# please keep pkgs sorted
10+
RUN \
11+
apt-get update && \
12+
apt-get install -y --no-install-recommends --fix-missing \
13+
build-essential \
14+
bundler \
15+
clang-format \
16+
clang-tidy \
17+
cmake \
18+
ditaa \
19+
g++ \
20+
gcc-riscv64-linux-gnu \
21+
gcc-riscv64-unknown-elf \
22+
gdb \
23+
gh \
24+
git \
25+
less \
26+
libc6-dev-riscv64-cross \
27+
libelf-dev \
28+
libgmp-dev \
29+
libyaml-dev \
30+
nodejs \
31+
npm \
32+
python3 \
33+
python3-pip \
34+
python3.12-venv \
35+
ruby \
36+
ruby-dev \
37+
shellcheck
38+
2239
RUN apt-get clean autoclean
2340
RUN apt-get autoremove -y
2441
RUN rm -rf /var/lib/{apt,dpkg,cache,log}/*

.devcontainer/devcontainer.json

+2-1
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,8 @@
3131
"zhwu95.riscv",
3232
"mathematic.vscode-pdf",
3333
"CraigMaslowski.erb",
34-
"HowerLimited.idl-vscode"
34+
"HowerLimited.udb-extension-pack-vscode",
35+
"sorbet.sorbet-vscode-extension"
3536
]
3637
}
3738
},

.github/CODEOWNERS

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
# default for all files
2-
* @dhower-qc
2+
* @dhower-qc @ThinkOpenly
33

44
# TODO: get more code owners
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
name: Singularity Setup
2+
description: All steps to use/build Singularity container
3+
runs:
4+
using: composite
5+
steps:
6+
- name: Setup apptainer
7+
uses: eWaterCycle/[email protected]
8+
- name: Get container from cache
9+
id: cache-sif
10+
uses: actions/cache@v4
11+
with:
12+
path: .singularity/image.sif
13+
key: ${{ hashFiles('container.def', 'bin/.container-tag') }}
14+
- name: Get gems and node files from cache
15+
id: cache-bundle-npm
16+
uses: actions/cache@v4
17+
with:
18+
path: |
19+
.home/.gems
20+
node_modules
21+
key: ${{ hashFiles('Gemfile.lock') }}-${{ hashFiles('package-lock.json') }}
22+
- if: ${{ steps.cache-sif.outputs.cache-hit != 'true' }}
23+
name: Build container
24+
run: ./bin/build_container
25+
shell: bash
26+
- name: Setup project
27+
run: ./bin/setup
28+
shell: bash

.github/dependabot.yml

+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
---
2+
# https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file#package-ecosystem
3+
version: 2
4+
updates:
5+
- package-ecosystem: gitsubmodule
6+
directory: /
7+
schedule:
8+
interval: daily

.github/workflows/container.yml

+82
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
name: Publish container
2+
on:
3+
push:
4+
branches:
5+
- main
6+
workflow_dispatch:
7+
jobs:
8+
publish-singularity-container:
9+
runs-on: ubuntu-latest
10+
env:
11+
SINGULARITY: 1
12+
steps:
13+
- name: Clone Github Repo Action
14+
uses: actions/checkout@v4
15+
16+
- name: Setup apptainer
17+
uses: eWaterCycle/[email protected]
18+
with:
19+
apptainer-version: 1.4.0
20+
21+
- name: Get container tag
22+
run: |
23+
TAG=$(cat bin/.container-tag)
24+
echo "TAG=$TAG" >> $GITHUB_ENV
25+
26+
- name: Get container from cache
27+
id: cache-sif
28+
uses: actions/cache@v4
29+
with:
30+
path: .singularity/image.sif
31+
key: ${{ hashFiles('container.def', 'bin/.container-tag') }}
32+
33+
- name: Get gems and node files from cache
34+
id: cache-bundle-npm
35+
uses: actions/cache@v4
36+
with:
37+
path: |
38+
.home/.gems
39+
node_modules
40+
key: ${{ hashFiles('Gemfile.lock') }}-${{ hashFiles('package-lock.json') }}
41+
42+
- if: ${{ steps.cache-sif.outputs.cache-hit != 'true' }}
43+
name: Build container
44+
run: ./bin/build_container
45+
46+
- name: Upload singularity container
47+
run: |
48+
apptainer registry login -u ${{ secrets.DOCKERHUB_USERNAME }} -p ${{ secrets.DOCKERHUB_TOKEN }} oras://docker.io
49+
apptainer push .singularity/image.sif oras://docker.io/riscvintl/spec-generator:${{ env.TAG }}
50+
51+
publish-docker-container:
52+
runs-on: ubuntu-latest
53+
env:
54+
DOCKER: 1
55+
steps:
56+
- name: Clone Github Repo Action
57+
uses: actions/checkout@v4
58+
59+
- name: Get container tag
60+
run: |
61+
TAG=$(cat bin/.container-tag)
62+
echo "TAG=$TAG" >> $GITHUB_ENV
63+
64+
- name: Login to Docker Hub
65+
uses: docker/login-action@v3
66+
with:
67+
username: ${{ secrets.DOCKERHUB_USERNAME }}
68+
password: ${{ secrets.DOCKERHUB_TOKEN }}
69+
70+
- name: Set up QEMU
71+
uses: docker/setup-qemu-action@v3
72+
73+
- name: Set up Docker Buildx
74+
uses: docker/setup-buildx-action@v3
75+
76+
- name: Build and push
77+
uses: docker/build-push-action@v6
78+
with:
79+
push: true
80+
file: ./.devcontainer/Dockerfile
81+
platforms: linux/amd64,linux/arm64
82+
tags: riscvintl/udb:${{ env.TAG }}

.github/workflows/nightly.yml

+2-21
Original file line numberDiff line numberDiff line change
@@ -31,26 +31,7 @@ jobs:
3131
steps:
3232
- name: Clone Github Repo Action
3333
uses: actions/checkout@v4
34-
- name: Setup apptainer
35-
uses: eWaterCycle/[email protected]
36-
- name: Get container from cache
37-
id: cache-sif
38-
uses: actions/cache@v4
39-
with:
40-
path: .singularity/image.sif
41-
key: ${{ hashFiles('container.def', 'bin/.container-tag') }}
42-
- name: Get gems and node files from cache
43-
id: cache-bundle-npm
44-
uses: actions/cache@v4
45-
with:
46-
path: |
47-
.home/.gems
48-
node_modules
49-
key: ${{ hashFiles('Gemfile.lock') }}-${{ hashFiles('package-lock.json') }}
50-
- if: ${{ steps.cache-sif.outputs.cache-hit != 'true' }}
51-
name: Build container
52-
run: ./bin/build_container
53-
- name: Setup project
54-
run: ./bin/setup
34+
- name: singularity setup
35+
uses: ./.github/actions/singularity-setup
5536
- name: Run regression
5637
run: ./do test:nightly

.github/workflows/pages.yml

+3-22
Original file line numberDiff line numberDiff line change
@@ -22,28 +22,9 @@ jobs:
2222
steps:
2323
- name: Clone Github Repo Action
2424
uses: actions/checkout@v4
25-
- name: Setup apptainer
26-
uses: eWaterCycle/[email protected]
27-
- name: Get container from cache
28-
id: cache-sif
29-
uses: actions/cache@v4
30-
with:
31-
path: .singularity/image.sif
32-
key: ${{ hashFiles('container.def', 'bin/.container-tag') }}
33-
- name: Get gems and node files from cache
34-
id: cache-bundle-npm
35-
uses: actions/cache@v4
36-
with:
37-
path: |
38-
.home/.gems
39-
node_modules
40-
key: ${{ hashFiles('Gemfile.lock') }}-${{ hashFiles('package-lock.json') }}
41-
- if: ${{ steps.cache-sif.outputs.cache-hit != 'true' }}
42-
name: Build container
43-
run: ./bin/build_container
44-
- name: Setup project
45-
run: ./bin/setup
46-
- name: Create deploy dir
25+
- name: singularity setup
26+
uses: ./.github/actions/singularity-setup
27+
- name: Create many artifacts in the _site directory
4728
run: /bin/bash lib/deploy.sh
4829
- name: Setup Pages
4930
uses: actions/configure-pages@v5

0 commit comments

Comments
 (0)