यह एक ऐसा प्रोवाइडर है जिसे एक्ज़ीक्यूटेबल नियमों से वापस लाया जा सकता है. इससे उस एनवायरमेंट को कंट्रोल किया जा सकता है जिसमें उनका एक्ज़ीक्यूटेबल चलाया जाता है.
सदस्य
        वातावरण
        dict RunEnvironmentInfo.environment
    यह स्ट्रिंग कुंजियों और वैल्यू का एक मैप है. यह एनवायरमेंट वैरिएबल और उनकी वैल्यू को दिखाता है. ये तब उपलब्ध कराए जाएंगे, जब इस प्रोवाइडर को वापस लाने वाले टारगेट को टेस्ट के तौर पर या रन कमांड के ज़रिए लागू किया जाएगा.
        
inherited_environment
        List RunEnvironmentInfo.inherited_environment
    एनवायरमेंट वैरिएबल के नामों का क्रम. ये वैरिएबल, शेल एनवायरमेंट से ली गई अपनी मौजूदा वैल्यू के साथ उपलब्ध कराए जाते हैं. ऐसा तब होता है, जब इस प्रोवाइडर को वापस लाने वाला टारगेट, टेस्ट के तौर पर या रन कमांड के ज़रिए एक्ज़ीक्यूट किया जाता है. अगर कोई वैरिएबल, 
environment और 
inherited_environment दोनों में शामिल है, तो शेल एनवायरमेंट से इनहेरिट की गई वैल्यू को प्राथमिकता दी जाएगी. हालांकि, ऐसा तब होगा, जब वैल्यू सेट की गई हो. यह सुविधा, टेस्ट के नियमों के लिए सबसे ज़्यादा फ़ायदेमंद है. ये नियम, 
bazel test के तहत हर्मेटिक एनवायरमेंट में काम करते हैं. साथ ही, इस सुविधा का इस्तेमाल करके, बाहरी एनवायरमेंट से किसी वैरिएबल को नॉन-हर्मेटिक तरीके से शामिल कर सकते हैं. इसके उलट, 
bazel run पहले से ही आउटर एनवायरमेंट को फ़ॉरवर्ड करता है. हालांकि, ध्यान दें कि किसी अन्य तरह के हर्मेटिक टेस्ट के लिए, एनवायरमेंट पर नॉन-हर्मेटिक डिपेंडेंसी को हार्डकोड करना चौंकाने वाला हो सकता है. साथ ही, इससे संवेदनशील जानकारी भी गलती से ज़ाहिर हो सकती है. 
--test_env फ़्लैग का इस्तेमाल करके, टेस्ट एनवायरमेंट को साफ़ तौर पर सेट करें. हालांकि, हमारा सुझाव है कि आप इस फ़्लैग का इस्तेमाल न करें और एनवायरमेंट को साफ़ तौर पर पॉप्युलेट करें.