Export github project to csv - github

Since 2022, Github features a second attempt on "Projects".
How can I export a table view of such an v2 project to a csv file?
Example
This is an example, which I would like to export to csv:
https://github.com/users/fiedl/projects/2/views/1
Further resources
Blog post on github projects
Projects documentation
API documentation
I have found this node project https://github.com/justinmahar/github-projectv2-csv-exporter, but maybe there is also a built-in endpoint or some cli tool

Workaround: Export all project items as csv
Based on the github cli and github's projects api, I have created a script to export all project items into a csv file as a temporary workaround.
Repo: https://github.com/fiedl/github-project-to-csv
brew install gh
git clone https://github.com/fiedl/github-project-to-csv.git
./github-project-to-csv.rb --project https://github.com/users/fiedl/projects/2 --output project.csv

Related

Restoring NuGet packages from another organization as an upstream feed in Azure DevOps

I have a project within one DevOps organization that has a dependency on a couple of NuGet packages that are hosted in a feed in another organization. Both organizations share the same Azure Active Directory tenant.
Following along with the documentation provided here I created a new view in my source feed called "Shared". On the setup for the view I have "All feeds and people in organizations associated with my Azure Active Directory" checked:
I then promoted both NuGet packages to that view:
In the other organization I have this feed set up to use the Shared view as an upstream source from another organization:
In my projects azure-pipelines Yaml file I have the following section for restoring packages:
And the associated nuget.config file looks like this:
The feed it is using is the one that belongs to the organization the project is in. My assumption based on the documentation is that the restore operation will look for the those 2 packages in the upstream source if they can not be found in the local feed or the public NuGet feed. However I am getting the following error during the restore process when running a build:
For each of these 2 packages I am getting:
No packages exist with this id in source(s): feed-{FeedName}, NuGet
All other packages restore fine. I've tried many variations of my build script and upstream settings to no avail. I'm pretty sure I have everything set up as the documentation has dictated. The docs don't really go into how your pipeline and nuget.config should be set so perhaps I have something incorrect there?
I had a comparable issue in the past with restoring packages. As possible solution, which worked in my case, I could suggest you try explicitly specifying Azure Artifacts Feed Id you're pulling packages from:
vstsFeed: {FEED_ID}

Upload Markdown files to Wiki as part of Azure DevOps Pipeline

As part of an Azure Pipeline to build a Python package and store it in Azure Artifacts I'm generating a lot of .md files from the docstrings as documentation for the package. I'd like to add a step to my pipeline to automatically upload those to the Azure DevOps Wiki. Is this possible? From the official documentation I could only find a way to do it manually from a folder in the repo.
I ended up cloning the wiki repository and subsequently adding and committing the generated files as part of the pipeline step.
You can use Rest Api to update Wiki pages: Pages.
Here you can find a sample with PowerShell: https://github.com/ashamrai/AzureDevOpsExtensions/blob/master/CustomPSTasks/UpdateWikiPage.ps1

Gradle dependencies to download a single file from github repository

Need some help with writing the gradle dependices to download a single file from github repository
We have a scenario where we need to download .yaml file from the github repository so that we can use it further to autogenerarte it . How do I download a single file form github report via gradle
The best option, if you have freedom to change the source project, is for the yaml to be built, versioned and published to a repository. Eg packed inside a zip/jar in nexus. You could then get the zip/jar in Gradle similar to any other dependency then unpack the yaml file.
Failing that there's a couple of options with github
Download via http (see download plugin)
Get using git (see gradle-git plugin)

How do I set up Azure Dev Ops to build Dev Express XAF-XPO project?

I want to set up continuous integration and deployment for an XAP Mobile app in Azure Devops.
In order to get CI/CD I need to set up the Azure Pipeline to install the right packages.
There is some information in the docs on Hosting your own NuGet feeds
and Get started with NuGet packages in Azure DevOps
Dev Express explained that they do not currently provide a Nuget feed for XAF, but I can make my own Delegate's DCNugetPackageBuilder
Using DXNugetPackageBuilder to make Nuget packages
As per the instructions I downloaded the .pdb files extracted them to c:\tmp\symbols
I also downloaded DXNugetPackageBuilder and edited buildPackages.bat according to instructions.
Next I ran build.ps1 in elevated Powershell
This created the .nupkg files at C:\tmp\Nuget
By default this uses the files located at
C:\Program Files (x86)\DevExpress 18.1\Components\Bin\Framework
and the .pdb files located at
c:\tmp\symbols
Using Nuget.Exe and the Credential Provider to push the packages to the feed
The Connect To Feed screen mentions I need to download Nuget.exe and the credential provider
Here are the docs on the Credentials Provider
I unzipped the VSTS CredentialProviders Nuget.Exe is included.
The next step is to follow the instructions given by the "add this feed" section of the Connect To Feed screen.
For example
nuget.exe push -Source "SBDDevExpress" -ApiKey VSTS c:\tmp\Nuget\DevExpress.Data.18.1.6.0.nupkg
I ran into an access denied issue that got solved here
then I was able to push all the packages I wanted.
Set the Nuget Package Source
In VS2017 with my solution open I used Tools -> Nuget Package Manager -> Package Manager Settings
I added package settings with the Azure endpoint set up as a package source.
Errors building
When I run the build pipeline I get errors like
The type or namespace DevExpress could not be found are you missing a directive or assembly reference?
From studying Updater.cs and Module.cs
It seems I am missing the following namespaces from the Nuget feed.
DevExpress.ExpressApp.DC;
DevExpress.ExpressApp.Updating;
DevExpress.Persistent.BaseImpl.PermissionPolicy;
[Update]
DevExpress suggested I compare the dlls generated in the bin folder with my package feed.
I found several missing files and pushed their packages.
I now have
XafMobile.Module\Properties\licenses.licx(1.0): Error LC0003: Unable to resolve type 'DevExpress.ExpressApp.ModuleBase"
I can see from the source code that ModuleBase is a public class in DevExpress.ExpressApp
I am wondering if this is something to do with reflection.
There is some mention of it at Dev Express support
[Update]
I tried removing the licence files and syncing the project.
Now the errors show as missing assembly references
Also When I rebuild my solution the license files are missing from the properties folders
I wonder if this helps explain it
[Update]
Manuel Grunder [DevExpress MVP] and DXNugetPackageBuilder author explained that
"
When working with nuget.packages you need to reference them via nuget as well
as he explains here
"
As is explained here
"When working with nuget.packages you need to reference them via nuget as well. Thats the reason why it did not work in the first place."

The way of migration from GitLab to GitHub Enterprise

I'd like to migrate GitLab to GitHub. Of course, Git repo is easy to migrate. But other working items, such as Issue. Can I migrate all working items to GitHub Enterprise? If API is needed, please let me know the GitHub and GitLab APIs for the migration. If there is a tool, it is the best and helpful.
Best Regards,
I believe that is there a more efficient approach to solve this, but today we are trying Enterprise Edition and migrations projects individualy.
To export a full project, with Issues, MR history, ..., there is a section called Export Project.
Under project Settings > General > Export Project section with the following instructions:
Export this project with all its related data in order to move your
project to a new GitLab instance. Once the export is finished, you can
import the file from the "New Project" page.
Once the exported file is ready, you will receive a notification email
with a download link.
The following items will be exported:
Project and wiki repositories
Project uploads
Project configuration including web hooks and services
Issues with comments, merge requests with diffs and comments, labels, milestones, snippets, and other project entities
The following items will NOT be exported:
Job traces and artifacts
LFS objects
Container registry images
CI variables
Any encrypted tokens
Now, I wanna learn if there is a global export for all projects.