Skip to content
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
6 changes: 6 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,12 @@ jobs:
cat /proc/cpuinfo
sudo apt-get update
sudo apt-get install -y postgresql postgresql-contrib
- os: ubuntu-24.04-arm
cache: ~/.cache/bazel
install: |
cat /proc/cpuinfo
sudo apt-get update
sudo apt-get install -y postgresql postgresql-contrib
- os: macos-latest
cache: /private/var/tmp/_bazel_runner
install: |
Expand Down
10 changes: 7 additions & 3 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,11 +1,14 @@
FROM ubuntu:24.04

ARG TARGETPLATFORM
ARG TARGETARCH

# Avoid interactive prompts
ENV DEBIAN_FRONTEND=noninteractive

# Update and install core packages
RUN --mount=type=cache,target=/var/lib/apt,id=$CACHE_ID/var/lib/apt \
--mount=type=cache,target=/var/cache/apt,id=$CACHE_ID/var/cache/apt \
RUN --mount=type=cache,target=/var/lib/apt,id=$TARGETPLATFORM/var/lib/apt \
--mount=type=cache,target=/var/cache/apt,id=$TARGETPLATFORM/var/cache/apt \
apt-get update && apt-get install -y \
ca-certificates \
curl \
Expand All @@ -17,11 +20,12 @@ RUN --mount=type=cache,target=/var/lib/apt,id=$CACHE_ID/var/lib/apt \
python3 \
python3-pip \
sudo \
tree \
wget \
unzip

# Install Bazelisk
RUN curl -Lo /usr/local/bin/bazelisk https://github.com/bazelbuild/bazelisk/releases/latest/download/bazelisk-linux-amd64 \
RUN curl -Lo /usr/local/bin/bazelisk https://github.com/bazelbuild/bazelisk/releases/latest/download/bazelisk-linux-$TARGETARCH \
&& chmod +x /usr/local/bin/bazelisk \
&& ln -s /usr/local/bin/bazelisk /usr/local/bin/bazel

Expand Down
5 changes: 4 additions & 1 deletion MODULE.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ bazel_dep(name = "platforms", version = "1.0.0")
bazel_dep(name = "rules_cc", version = "0.2.17")
bazel_dep(name = "rules_multitool", version = "1.11.1")
bazel_dep(name = "rules_python", version = "1.9.0")
bazel_dep(name = "rules_shell", version = "0.6.1")
bazel_dep(name = "rules_shell", version = "0.7.1")
bazel_dep(name = "rules_rust", version = "0.69.0")

python = use_extension("@rules_python//python/extensions:python.bzl", "python")
Expand All @@ -25,3 +25,6 @@ use_repo(internal_deps, "ofiuco_defs", "ofiuco_pip", "ofiuco_poetry_deps")
multitool = use_extension("@rules_multitool//multitool:extension.bzl", "multitool")
multitool.hub(lockfile = "//python/private:uv.lock.json")
use_repo(multitool, "multitool")

rust = use_extension("@rules_rust//rust:extensions.bzl", "rust")
rust.toolchain(edition = "2026")
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ python = use_extension("@rules_python//python/extensions:python.bzl", "python")
python.toolchain(python_version = "3.13")
use_repo(python, "python_3_13")

bazel_dep(name = "ofiuco", version = "0.8.4")
bazel_dep(name = "ofiuco", version = "0.9.0")

parse = use_extension("@ofiuco//python:extensions.bzl", "parse")
parse.lock(
Expand Down
38 changes: 29 additions & 9 deletions docker-compose.yml
Original file line number Diff line number Diff line change
@@ -1,25 +1,45 @@
services:
ofiuco:

linux-amd64:
build:
context: .
dockerfile: Dockerfile
container_name: ofiuco
platform: linux/amd64
container_name: ofiuco-linux-amd64
cap_add:
- NET_ADMIN
environment:
- USER=${USER}
- WORKSPACE=${PWD}
- HISTFILE=/home/fsw-dev/.cache/.bash_history
- HISTFILE=${HOME}/.cache/ofiuco-linux-amd64/.bash_history
- CACHE_DIR=${HOME}/.cache/ofiuco-linux-amd64/bazel
volumes:
- ${PWD}:${PWD}:rw
- ${HOME}/.gitconfig:/home/fsw-dev/.gitconfig:ro
- ${HOME}/.netrc:/home/fsw-dev/.netrc:ro
- ${HOME}/.ssh:/home/fsw-dev/.ssh:ro
- ${HOME}/.gitconfig:/home/ubuntu/.gitconfig:ro
- ${HOME}/.netrc:/home/ubuntu/.netrc:ro
- ${HOME}/.ssh:/home/ubuntu/.ssh:ro
- ${HOME}/foss:${HOME}/foss
- ofiuco-cache:/home/fsw-dev/.cache
- ${HOME}/.cache/ofiuco-linux-amd64:${HOME}/.cache/ofiuco-linux-amd64
working_dir: ${PWD}
entrypoint: sleep infinity
post_start:
- command: echo chown -R 1000:1000 {HOME}/.cache/ofiuco-linux-amd64
user: root

volumes:
ofiuco-cache:
linux-aarch64:
extends: linux-amd64
platform: linux/aarch64
container_name: ofiuco-linux-aarch64
environment:
- HISTFILE=${HOME}/.cache/ofiuco-linux-aarch64/.bash_history
- CACHE_DIR=${HOME}/.cache/ofiuco-linux-aarch64/bazel
volumes: !override
- ${PWD}:${PWD}:rw
- ${HOME}/.gitconfig:/home/ubuntu/.gitconfig:ro
- ${HOME}/.netrc:/home/ubuntu/.netrc:ro
- ${HOME}/.ssh:/home/ubuntu/.ssh:ro
- ${HOME}/foss:${HOME}/foss
- ${HOME}/.cache/ofiuco-linux-aarch64:${HOME}/.cache/ofiuco-linux-aarch64
post_start: !reset
- command: echo chown -R 1000:1000 ${HOME}/.cache/ofiuco-linux-aarch64
user: root
10 changes: 10 additions & 0 deletions examples/markers/MODULE.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,16 @@ parse.lock(
name = "python",
lock = "//:poetry.lock",
platforms = {
python_version + "_aarch64-unknown-linux-gnu": "{" + ",".join(
[
'"python_full_version": "{}"'.format(python_full_version),
'"os_name": "posix"',
'"platform_machine": "arm64"',
'"platform_system": "Windows"',
'"platform_tags": ["manylinux_2_17_aarch64"]',
'"sys_platform": "linux"',
],
) + "}",
python_version + "_x86_64-unknown-linux-gnu": "{" + ",".join(
[
'"python_full_version": "{}"'.format(python_full_version),
Expand Down
Loading
Loading