Skip to content

Commit 9b19746

Browse files
committed
2024S: build offline
1 parent 637e587 commit 9b19746

4 files changed

Lines changed: 22 additions & 12 deletions

File tree

.github/workflows/build.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,11 +55,11 @@ jobs:
5555
- name: Mirror + trigger CI
5656
uses: tkf2019/gitlab-mirror-and-ci-action@master
5757
with:
58-
args: "https://git.tsinghua.edu.cn/os-lab/2024s/public/rcore-tutorial-code"
58+
args: "https://git.tsinghua.edu.cn/os-lab/2024s/public/rcore-tutorial-code-2024s"
5959
env:
6060
GITLAB_HOSTNAME: "git.tsinghua.edu.cn"
6161
GITLAB_PROJECT_ID: "29091"
62-
GITLAB_PROJECT_NAME: "rcore-tutorial-code"
62+
GITLAB_PROJECT_NAME: "rcore-tutorial-code-2024s"
6363
GITLAB_PROJECT_TOKEN: ${{secrets.GITLAB_PROJECT_TOKEN}}
6464
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
6565
deploy:

.gitlab-ci.yml

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@ stages:
77
test-code-job:
88
stage: test
99
script:
10-
- git clone https://github.com/LearningOS/rCore-Tutorial-Checker-2024S.git ci-user
11-
- git clone https://github.com/LearningOS/rCore-Tutorial-Test-2024S.git ci-user/user
12-
- cd ci-user && make test CHAPTER=`echo $CI_COMMIT_REF_NAME | grep -oP 'ch\K[0-9]'` passwd=$BASE_TEST_TOKEN
10+
- git clone https://token:${RCORE_CHECKER_REPO_READ_TOKEN_2024S}@git.tsinghua.edu.cn/os-lab/2024s/ta/rcore-tutorial-checker-2024s.git ci-user
11+
- git clone https://token:${RCORE_TEST_REPO_READ_TOKEN_2024S}@git.tsinghua.edu.cn/os-lab/2024s/public/rcore-tutorial-test-2024s.git ci-user/user
12+
- cp -r $HOME/os-vendor os/vendor
13+
- cp -r $HOME/user-vendor ci-user/user/vendor
14+
- cd ci-user && make test CHAPTER=`echo $CI_COMMIT_REF_NAME | grep -oP 'ch\K[0-9]'` passwd=$BASE_TEST_TOKEN OFFLINE=1

Dockerfile

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -73,13 +73,18 @@ RUN rustup --version && \
7373
cargo --version && \
7474
rustc --version
7575

76-
# 3. Build env for labs
77-
# See os1/Makefile `env:` for example.
78-
# This avoids having to wait for these steps each time using a new container.
79-
RUN rustup target add riscv64gc-unknown-none-elf && \
80-
cargo install cargo-binutils --vers ~0.2 && \
81-
rustup component add rust-src && \
82-
rustup component add llvm-tools-preview
76+
# 2.3 Env
77+
RUN cargo install cargo-binutils; \
78+
rustup target add riscv64gc-unknown-none-elf; \
79+
rustup component add rust-src; \
80+
rustup component add llvm-tools-preview; \
81+
rustup component add rustfmt; \
82+
rustup component add clippy;
83+
84+
# 3. Cargo vendor
85+
WORKDIR ${HOME}
86+
COPY os/vendor ./os-vendor
87+
COPY user/vendor ./user-vendor
8388

8489
# Ready to go
8590
WORKDIR ${HOME}

os/Makefile

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ KERNEL_BIN := $(KERNEL_ELF).bin
66
DISASM_TMP := target/$(TARGET)/$(MODE)/asm
77
FS_IMG := ../user/target/$(TARGET)/$(MODE)/fs.img
88
APPS := ../user/src/bin/*
9+
OFFLINE :=
910

1011
# BOARD
1112
BOARD := qemu
@@ -37,10 +38,12 @@ TEST ?=
3738
build: env $(KERNEL_BIN) fs-img
3839

3940
env:
41+
ifeq ($(OFFLINE),)
4042
(rustup target list | grep "riscv64gc-unknown-none-elf (installed)") || rustup target add $(TARGET)
4143
cargo install cargo-binutils
4244
rustup component add rust-src
4345
rustup component add llvm-tools-preview
46+
endif
4447

4548
$(KERNEL_BIN): kernel
4649
@$(OBJCOPY) $(KERNEL_ELF) --strip-all -O binary $@

0 commit comments

Comments
 (0)