mirror of
https://github.com/genodelabs/genode.git
synced 2024-12-20 14:13:09 +00:00
da498af74e
Until there is no network driver present for this board it is needless to let the tests fail each night.
157 lines
4.7 KiB
Plaintext
157 lines
4.7 KiB
Plaintext
create_boot_directory
|
|
|
|
if {[have_spec linux] || [have_spec imx7d_sabre] ||
|
|
[expr [have_spec imx53] && [have_spec trustzone]]} {
|
|
puts "Run script does not support this platform."
|
|
exit 0
|
|
}
|
|
|
|
import_from_depot [depot_user]/src/[base_src] \
|
|
[depot_user]/pkg/[drivers_nic_pkg] \
|
|
[depot_user]/src/report_rom \
|
|
[depot_user]/src/fs_rom \
|
|
[depot_user]/src/vfs \
|
|
[depot_user]/src/vfs_lxip \
|
|
[depot_user]/src/fetchurl \
|
|
[depot_user]/src/libc \
|
|
[depot_user]/src/libssh \
|
|
[depot_user]/src/libssl \
|
|
[depot_user]/src/libcrypto \
|
|
[depot_user]/src/zlib \
|
|
[depot_user]/src/curl \
|
|
[depot_user]/src/init \
|
|
[depot_user]/src/chroot \
|
|
[depot_user]/src/extract \
|
|
[depot_user]/src/libarchive \
|
|
[depot_user]/src/liblzma \
|
|
[depot_user]/src/verify
|
|
|
|
set config {
|
|
<config>
|
|
<parent-provides>
|
|
<service name="ROM"/>
|
|
<service name="IRQ"/>
|
|
<service name="IO_MEM"/>
|
|
<service name="IO_PORT"/>
|
|
<service name="PD"/>
|
|
<service name="RM"/>
|
|
<service name="CPU"/>
|
|
<service name="LOG"/>
|
|
</parent-provides>
|
|
|
|
<default-route>
|
|
<any-service> <parent/> <any-child/> </any-service>
|
|
</default-route>
|
|
|
|
<default caps="100"/>}
|
|
|
|
proc depot_user_download { user } {
|
|
return [exec cat [genode_dir]/depot/$user/download] }
|
|
|
|
proc depot_user_pubkey { user } {
|
|
return [exec cat [genode_dir]/depot/$user/pubkey] }
|
|
|
|
append config {
|
|
<start name="timer">
|
|
<resource name="RAM" quantum="1M"/>
|
|
<provides> <service name="Timer"/> </provides>
|
|
</start>
|
|
|
|
<start name="drivers" caps="1000">
|
|
<resource name="RAM" quantum="32M" constrain_phys="yes"/>
|
|
<binary name="init"/>
|
|
<route>
|
|
<service name="ROM" label="config"> <parent label="drivers.config"/> </service>
|
|
<service name="Timer"> <child name="timer"/> </service>
|
|
<any-service> <parent/> </any-service>
|
|
</route>
|
|
<provides> <service name="Nic"/> </provides>
|
|
</start>
|
|
|
|
<start name="vfs">
|
|
<resource name="RAM" quantum="20M"/>
|
|
<provides> <service name="File_system"/> </provides>
|
|
<config>
|
|
<vfs>
|
|
<dir name="depot">
|
|
<dir name="nfeske">
|
|
<ram/>
|
|
<inline name="download">} [depot_user_download nfeske] {</inline>
|
|
<inline name="pubkey">} [depot_user_pubkey nfeske] {</inline>
|
|
</dir>
|
|
<dir name="genodelabs">
|
|
<ram/>
|
|
<inline name="download">} [depot_user_download genodelabs] {</inline>
|
|
<inline name="pubkey">} [depot_user_pubkey genodelabs] {</inline>
|
|
</dir>
|
|
</dir>
|
|
<dir name="public"> <ram/> </dir>
|
|
</vfs>
|
|
<policy label="depot_download -> depot" root="/depot" writeable="yes"/>
|
|
<policy label="depot_download -> public" root="/public" writeable="yes"/>
|
|
</config>
|
|
</start>
|
|
|
|
<start name="report_rom">
|
|
<resource name="RAM" quantum="1M"/>
|
|
<provides> <service name="Report"/> <service name="ROM"/> </provides>
|
|
<config verbose="yes">
|
|
</config>
|
|
</start>
|
|
|
|
<start name="depot_download" caps="2000">
|
|
<binary name="init"/>
|
|
<resource name="RAM" quantum="70M"/>
|
|
<route>
|
|
<service name="ROM" label="config">
|
|
<parent label="depot_download.config"/> </service>
|
|
<service name="Report"> <child name="report_rom"/> </service>
|
|
<service name="File_system"> <child name="vfs"/> </service>
|
|
<any-service> <parent/> <any-child/> </any-service>
|
|
</route>
|
|
</start>
|
|
</config>}
|
|
|
|
|
|
set fd [open [run_dir]/genode/installation w]
|
|
puts $fd {
|
|
<installation arch="x86_64">
|
|
<archive path="genodelabs/pkg/wm/2018-02-26"/>
|
|
<index path="nfeske/index/19.02"/>
|
|
<index path="nfeske/index/19.03"/>
|
|
</installation>}
|
|
close $fd
|
|
|
|
|
|
install_config $config
|
|
|
|
file copy -force [genode_dir]/repos/gems/recipes/raw/depot_download/depot_download.config \
|
|
[run_dir]/genode/depot_download.config
|
|
|
|
build { app/depot_download_manager app/depot_query }
|
|
|
|
append boot_modules { depot_download_manager depot_query }
|
|
|
|
build_boot_image $boot_modules
|
|
|
|
append qemu_args " -nographic "
|
|
|
|
proc qemu_nic_model {} {
|
|
if [have_spec x86] { return e1000 }
|
|
if [have_spec lan9118] { return lan9118 }
|
|
if [have_spec zynq] { return cadence_gem }
|
|
return nic_model_missing
|
|
}
|
|
|
|
append qemu_args " -netdev user,id=net0 "
|
|
append qemu_args " -net nic,model=[qemu_nic_model],netdev=net0 "
|
|
|
|
|
|
# watch the state reports generated by the depot-download manager
|
|
set expected_pattern {}
|
|
append expected_pattern {.*path="genodelabs/pkg/wm/2018-02-26" state="done".*}
|
|
append expected_pattern {.*path="nfeske/index/19.02" state="done".*}
|
|
append expected_pattern {.*path="nfeske/index/19.03" state="failed".*}
|
|
|
|
run_genode_until $expected_pattern 150
|