• Martin Thomas Fleischer's avatar
    Fix shell builders (#50) · 3ee93a0f
    Martin Thomas Fleischer authored
    Summary:
    In 0ae204a978c11ddefafd81bd319a078239a44c1c the 'projects_dir' option
    became a required constructor argument since it is called within the
    constructor. However, it has not been adjusted in the subclasses that
    used to set the option after instantiation. This commit fixes the
    'shell_builder' and the 'debian_system_builder'.
    Pull Request resolved: https://github.com/facebook/openr/pull/50
    
    Test Plan:
    1. Go to build directory: `cd build`
    2. Run the `shell_builder` & `debian_system_builder`:
        - `python fbcode_builder/shell_builder.py`
        - `python debian_system_builder/debian_system_builder.py`
    
    `shell_builder` output before:
    ```
    Traceback (most recent call last):
      File "fbcode_builder/shell_builder.py", line 102, in <module>
        builder = ShellFBCodeBuilder()
      File "/home/butjar/tu/ma/openr/build/fbcode_builder/fbcode_builder.py", line 93, in __init__
        self._github_dir = self.option('projects_dir')
      File "/home/butjar/tu/ma/openr/build/fbcode_builder/fbcode_builder.py", line 108, in option
        raise RuntimeError('Option {0} is required'.format(name))
    RuntimeError: Option projects_dir is required
    ```
    
    `shell_builder` output after:
    ```
    set -exo pipefail
    export CCACHE_DIR='/home/butjar/.fbcode_builder-sZshomesZsbutjarsZstusZsmasZsopenr/.ccache' CC="ccache ${CC:-gcc}" CXX="ccache ${CXX:-g++}"
    ### Diagnostics ###
    
    # Builder ShellFBCodeBuilder(google/googletest:cmake_defines={u'BUILD_GTEST': u'ON', u'BUILD_SHARED_LIBS': u'OFF'}, google/googletest:git_hash=u'release-1.8.1', facebook/openr:local_repo_dir='/home/butjar/tu/ma/openr', facebook/zstd:git_hash=ShellQuoted(u'$(git describe --abbrev=0 --tags origin/master)'), openr/build:cmake_defines={u'ADD_ROOT_TESTS': u'OFF'}, thom311/libnl:git_hash=u'libnl3_2_25', projects_dir=u'/home/butjar/.fbcode_builder-sZshomesZsbutjarsZstusZsmasZsopenr', fmtlib/fmt:git_hash=u'5.3.0', wangle/wangle/build:cmake_defines={u'BUILD_TESTS': u'OFF'}, prefix=u'/home/butjar/.fbcode_builder-sZshomesZsbutjarsZstusZsmasZsopenr/installed', fizz/fizz/build:cmake_defines={u'BUILD_TESTS': u'ON'}, ccache_dir=u'/home/butjar/.fbcode_builder-sZshomesZsbutjarsZstusZsmasZsopenr/.ccache', zeromq/libzmq:git_hash=u'v4.2.2', make_parallelism=4, jedisct1/libsodium:git_hash=u'stable')
    hostname
    cat /etc/issue || echo no /etc/issue
    g++ --version || echo g++ not installed
    cmake --version || echo cmake not installed
    
    ### Check out fmtlib/fmt, workdir build ###
    
    mkdir -p '/home/butjar/.fbcode_builder-sZshomesZsbutjarsZstusZsmasZsopenr' && cd '/home/butjar/.fbcode_builder-sZshomesZsbutjarsZstusZsmasZsopenr'
    git clone  https://github.com/'fmtlib/fmt'
    mkdir -p '/home/butjar/.fbcode_builder-sZshomesZsbutjarsZstusZsmasZsopenr'/'fmt'/'build' && cd '/home/butjar/.fbcode_builder-sZshomesZsbutjarsZstusZsmasZsopenr'/'fmt'/'build'
    git checkout '5.3.0'
    
    ### Build and install fmtlib/fmt ###
    
    ...
    ```
    
    Reviewed By: steven1327
    
    Differential Revision: D21865881
    
    Pulled By: saifhhasan
    
    fbshipit-source-id: dfd78127d3b2c78721f84a3ecafe0b7198c38f06
    3ee93a0f
shell_builder.py 3.62 KB