Tutorial 04b DP0.2 giving error in cell 2

Running tutorial 04b in DP0.2, LSST Science Pipelines version: Weekly 2025_17, I get the following error in cell 2:
butler = dafButler.Butler(‘dp02’, collections=‘2.2i/runs/DP0.2’)
--------------------------------------------------------------------------- FileNotFoundError Traceback (most recent call last) File /opt/lsst/software/stack/conda/envs/lsst-scipipe-10.1.0/share/eups/Linux64/daf_butler/g6dd59efbe6+ec144cf465/python/lsst/daf/butler/_butler_config.py:138, in ButlerConfig.init(self, other, searchPaths, without_datastore) 137 try: → 138 butlerConfig = Config(other) 139 except FileNotFoundError as e: 140 # No reason to talk about aliases unless we were given a 141 # string and the alias was not resolved. File /opt/lsst/software/stack/conda/envs/lsst-scipipe-10.1.0/share/eups/Linux64/daf_butler/g6dd59efbe6+ec144cf465/python/lsst/daf/butler/_config.py:287, in Config.init(self, other) 285 elif isinstance(other, str | ResourcePath | Path): 286 # if other is a string, assume it is a file path/URI → 287 self.__initFromUri(other) 288 self._processExplicitIncludes() File /opt/lsst/software/stack/conda/envs/lsst-scipipe-10.1.0/share/eups/Linux64/daf_butler/g6dd59efbe6+ec144cf465/python/lsst/daf/butler/_config.py:393, in Config.__initFromUri(self, path) 392 if not uri.exists(): → 393 raise FileNotFoundError(f"Config location {uri} does not exist.") 394 raise RuntimeError(f"The Config URI does not have a supported extension: {uri}") FileNotFoundError: Config location file:///home/l/loveday/notebooks/tutorial-notebooks/DP0.2/dp02 does not exist. The above exception was the direct cause of the following exception: FileNotFoundError Traceback (most recent call last) Cell In[2], line 1 ----> 1 butler = dafButler.Butler(‘dp02’, collections=‘2.2i/runs/DP0.2’) File /opt/lsst/software/stack/conda/envs/lsst-scipipe-10.1.0/share/eups/Linux64/daf_butler/g6dd59efbe6+ec144cf465/python/lsst/daf/butler/_butler.py:166, in Butler.new(cls, config, collections, run, searchPaths, writeable, inferDefaults, without_datastore, metrics, **kwargs) 152 def new( 153 cls, 154 config: Config | ResourcePathExpression | None = None, (…) 163 **kwargs: Any, 164 ) → Butler: 165 if cls is Butler: → 166 return Butler.from_config( 167 config=config, 168 collections=collections, 169 run=run, 170 searchPaths=searchPaths, 171 writeable=writeable, 172 inferDefaults=inferDefaults, 173 without_datastore=without_datastore, 174 metrics=metrics, 175 **kwargs, 176 ) 178 # Note: we do not pass any parameters to new, Python will pass them 179 # to init after new returns sub-class instance. 180 return super().new(cls) File /opt/lsst/software/stack/conda/envs/lsst-scipipe-10.1.0/share/eups/Linux64/daf_butler/g6dd59efbe6+ec144cf465/python/lsst/daf/butler/_butler.py:336, in Butler.from_config(cls, config, collections, run, searchPaths, writeable, inferDefaults, without_datastore, metrics, **kwargs) 325 options = ButlerInstanceOptions( 326 collections=collections, 327 run=run, (…) 331 kwargs=kwargs, 332 ) 334 # Load the Butler configuration. This may involve searching the 335 # environment to locate a configuration file. → 336 butler_config = ButlerConfig(config, searchPaths=searchPaths, without_datastore=without_datastore) 337 butler_type = butler_config.get_butler_type() 339 # Make DirectButler if class is not specified. File /opt/lsst/software/stack/conda/envs/lsst-scipipe-10.1.0/share/eups/Linux64/daf_butler/g6dd59efbe6+ec144cf465/python/lsst/daf/butler/_butler_config.py:159, in ButlerConfig.init(self, other, searchPaths, without_datastore) 157 else: 158 errmsg = str(e) → 159 raise FileNotFoundError(errmsg) from e 161 configFile = butlerConfig.configFile 162 if configFile is not None: FileNotFoundError: Config location file:///home/l/loveday/notebooks/tutorial-notebooks/DP0.2/dp02 does not exist. (given ‘dp02’ and known aliases: /repo/tts, embargo, /repo/embargo_new+sasquatch_dev, embargo_session, embargo_old+sasquatch_dev, /repo/embargo_old, ops-rehearsal-3-prep, prompt, /repo/embargo_old+sasquatch_dev, /repo/dc2, /repo/embargo.sasquatch_dev, embargo.sasquatch_dev, embargo_or5.sasquatch_dev, /repo/hsc-temp, LSSTCam, /repo/dp1_prep, /repo/ops-rehearsal-3-prep.sasquatch_dev, dp1_prep, /repo/embargo, solarsystem_embargo, /repo/main+sasquatch_dev, embargo_or4+sasquatch_dev, /repo/embargo_old.sasquatch_dev, embargo_new.sasquatch_dev, embargo_or4.sasquatch_dev, embargo_readonly, embargo_old, /repo/ucd, embargo_new, /repo/dp1, solarsystem, /repo/aos_imsim, /repo/main, dp1, embargo_or5, LATISS, /repo/embargo+sasquatch_dev, /repo/bts, LSSTComCam, /repo/ir2, embargo_or4, /repo/embargo_new, embargo_old.sasquatch_dev, /repo/main.sasquatch_dev, /repo/ops-rehearsal-3-prep+sasquatch_dev, embargo_or5+sasquatch_dev, embargo+sasquatch_dev, /repo/oga, embargo_new+sasquatch_dev, /repo/prompt, /repo/embargo_new.sasquatch_dev, /repo/dc2+sasquatch_dev, /repo/ops-rehearsal-3-prep)

Am I supposed to obtain a config file from somewhere?

Hi Jon-

You didn’t specify in your message, but it looks like you’re trying to run this at the USDF? The tutorial notebooks are written assuming users are accessing data products released via the “public” RSP at data.lsst.cloud. The “dp02” alias for the Data Preview 0.2 Butler is defined specifically in the cloud instance of the RSP, and is likely not defined at the USDF.

In general you would need to edit paths, repositories, and collection names if you wanted to run the tutorial notebooks at the USDF. I recommend sticking to data.lsst.cloud when running the tutorials.