Making bots to trigger additional tests on Github PR - automated-tests

On the open source projects of large organisations I've seen various bots that developers interact with on their github PRs. In our workflow we run automated testing with github actions but then manually have to setup QA runs when needed. Inspired by the bots i've seen elsewhere I was wondering how easy it would be to build a bot that will trigger a QA run by typing something like "#custombot trigger QA run".
Is this possible and if so can I please be sign posted to resources to help me make such a bot?

Related

How can I automate play store app creation

We have a template app written with flutter that each customer can buy a version of it and have the exact same functionality but connecting to a different database etc. Creating an app for each customer and deploying that app takes a lot of time, so we've decided to automate this process. For deploying updates of the apps, I was able to achieve that functionality very easily by integrating fastlane.
The part I am stuck at is how to automate app creation with all the steps (Creating the app, filling main store listing, publishing the first version, etc.). I've searched all over the internet and not found a single solution for this. For the App store there exists the fastlane produce tool, but according to the maintainers they do not plan to support an alternative for android at the moment.
As a solution I'm thinking of doing this using web scraping using tools such as puppeteer or selenium. Is there a better solution, and is doing scraping for this task a bad idea?

Is there a way for Expo applications with the managed workflow to be distributed to testers with an invite link?

It should be as simple as possible for the testers. Best case would be a link that they can click on that directly installs the app on iOS and Android devices (maybe through another app similar to testflight). As we're using Firebase in our application I looked at Firebase App distribution but it seems that it doesn't work with the managed workflow of Expo. We would need to eject our app to (possibly) make it work. As we have only a limited amount of time until the test I would like to avoid a lenghty evaluation process like the one testflight requires.
Thanks in advance for any recommendations!
Apps using Managed Workflow can be shared via Expo Go: https://docs.expo.dev/guides/sharing-preview-releases/
After some research I came across diawi.com which seems to offer what I'm searching for. It's really easy for the testers, they just have to scan a qr code or click on a link and the app actually appears as a standalone application.

App Store connect. Can’t transfer app because builds are still tnere

Help!
I’ve been trying to transfer an app for a month now to a client and he’s getting angry! The last box in App Store connect about the TestFlight builds won’t grt ticket, and I don’t know what to do. I’ve tried everything. All builds are gone, all info from localizations, I’ve made countless updates, everything. I contacted Apple support but they’ve just kept passing me to different levels of support so far. I don’t know what do to. Is there a way to manually transfer it? Like if I removed mine from sale, and uploaded it on the clients side? And help is appreciated, thanks!
for transferring your app to the diff account.
All the test flight build has to be deleted manually.
All the test details has to be wiped off.
All the App information has to be cleaned in the app information section.
But i could see that you didn’t deleted the test flight build properly. thats why you are getting this error. i succeed transferring my 2 application.

Understanding the scalability of RShiny apps hosted on ShinyServer

I am building a series of interactive shiny web apps for a project that I am considering turning into a Company. My background is in data science and I don't have a lot of experience on the web app / server side of things, but these are important aspects for me to consider with my project. I currently have an Amazon Linux AMI EC2 instance with ShinyServer (free, open-source) installed, and I am currently hosting early versions of my web apps there. So far everything works fine, but I haven't made the links public yet.
My first question is whether anyone knows if there are certain limitations (scalability limitations, integration with database limitations, security / authentication limitations, etc.) that I will inevitably run into using RShiny apps and ShinyServer? I haven't heard of many successful, super-popular web apps being shiny apps hosted on ShinyServer, but rather my feeling is that ShinyServer is mainly used for hosting RShiny apps that are shared amongst only a small number of people (i.e. shared amongst team members at a company.). Per this thread - Does R-Server or Shiny Server create a new R process/instance for each user? - I am particularly concerned that my app won't be able to handle thousands of users simultaneously since only 1 R process is created for the app regardless of the # of concurrent users of the app. Having 10-20 processes through ShinyServer pro probably doesn't solve the issue either if I ever intend to scale greater than the hundreds or thousands of users. I also noticed that ShinyServer Pro would run me a not-so-negligible $10K per year.
My second question is whether RShiny apps can be deployed using other server technologies, such as Heroku. I came across this github page (https://github.com/virtualstaticvoid/heroku-buildpack-r/tree/heroku-16) but haven't dug too deep into it yet. I've been told that heroku makes it easy to update releases to apps whose code is on github (git push heroku:master), amongst other things.
My third question involves certain specific considerations of mine. In particular, I am currently working on a script that queries data from an API and writes that data to a (not-yet-setup) database of mine. This is the data my apps use, and I'd be interested in having the apps update in real time as the database updates, without requiring the user to refresh the webpage. A buddy of mine suggested AJAX for this type of asynchronous behavior, and it looks like this may be possible in R with something like this (https://github.com/daattali/advanced-shiny/tree/master/api-ajax).
Sorry that this is such a loaded question, but I hope it doesn't get closed down as I think it is fairly educational. Any suggestions / sources / pointing me in the right direction would be greatly appreciated on this.
Canovice,
I'd recommend you take a look at the following RStudio / AWS support articles. To scale a shiny server you'll need to look at using a load balancer:
RStudio
https://shiny.rstudio.com/articles/scaling-and-tuning.html
https://support.rstudio.com/hc/en-us/articles/220546267-Scaling-and-Performance-Tuning-Applications-in-Shiny-Server-Pro
https://support.rstudio.com/hc/en-us/articles/217801438-Can-I-load-balance-across-multiple-nodes-running-Shiny-Server-Pro-
AWS
https://aws.amazon.com/blogs/big-data/running-r-on-aws/
Blog Article:
http://mgritts.github.io/2016/07/08/shiny-aws/
Shiny is a great platform, their support is fabulous. I'd recommend you ring them up - they'll be sure to help answer your questions.
That said if your plan is to create a scalable website that will support thousands or hundreds of thousands of people then my sense would be to recommend you also review and consider using D3.js in conjunction with react.js or Angular.js, not forgetting to mention node.js.
My sense is that you are looking at a backend database connected to a logic engine and visualisation front end. If you are looking for a good overview of usage take a look at the following web page and git repo [A little dated but useful]:
https://anmolkoul.wordpress.com/2015/06/05/interactive-data-visualization-using-d3-js-dc-js-nodejs-and-mongodb/
https://github.com/anmolkoul/node-dc-mongo
I hope the above points you in the right direction.
I'd like to provide some notes related to your second question: Yes, you can use the mentioned buildback to deploy shiny applications on heroku.
I was in a similar situation with you (asking myself about possible ways of serving Shiny applications in a scalable manner) and decided to go the "heroku way".
You may find these hints helpful when deploying your app to heroku using the buildpack mentioned above:
Heroku tries to "guess" how to execute your application. But you can also add a special file, named Procfile, to your application to control the process commands you want to execute for your application. In my case I used web: R -f ~/run.R --gui-none --no-save, where this means that a file named run.R is being passed to the R executable for the web server process
The stack on heroku is based on Ubuntu. If you need additional deb-packages, you can create another special file named Aptfile and add the package names therein, heroku will then automatically install these for you (I needed it for RPostgreSQL)
You can add another special file named init.R and install all R packages as necessary just as you are used to, i.e. with install.packages etc. You can also add initial configuration material within this file.
As a running example, here is an example toy application that I wrote for myself to remember how a "full-stack" shiny app may look like, including compability with heroku.
For a large number of concurrent users, use a load balancer like nginx and enable the autoscaling of your app, e.g. through Kubernetes.
You can deploy your app on Heroku. On the paid tiers it includes NoOps autoscaling of your app. See this tutorial on how to deploy a Shiny app in a Docker container on Heroku: https://medium.com/analytics-vidhya/deploying-an-r-shiny-app-on-heroku-free-tier-b31003858b68
You can query the table last update timestamp in the Shiny server logic with reactivePoll() and rerun your db query if it changed. It is not "real-time" but depending on your application close enough if you set the time interval small.

Paypal PayFlow Pro Asp.Net configuration

So, this does not necessarily have to do directly with the code itself, although it is certainly a component of it.
I recently downloaded and installed the PayFlow Pro SDK for use with ASP.net
link here:
https://cms.paypal.com/us/cgi-bin/?cmd=_render-content&content_ID=developer/library_download_sdks
I installed this to my development machine. I also came accross this example code which I figured outlined the primary setup for basic Paypal Credit Card Transaction functionality.
link here:
http://www.codeproject.com/KB/aspnet/PayPal_PayflowPro.aspx
Anyways, I have two main questions
Do I have to install the SDK on the web hosts server in order to utilize the functionality of it? This seems to make sense, however, the tutorial in the second link suggests I create a web reference. Unless I am not understanding something here, wouldn't this just strictly work on my development machine, or at least, the functionality of the remote website that references this web reference to access the sdk, would this not be dependent on my computer running and broadcasting this information?
I just need clarification on how to install and/or access the sdk for use on a remote webhosts server (ie. do i need to install the sdk on the web-hosts server and if so, how would one go about doing so (ie. where to install, how to install)?).
Are there any other clean cut examples like my second link provides, that sort of outline the basic functionality of Payflow Pro? I find paypal's examples numerous and convoluted and their online slides/video tutorials to be tedious.
Perhaps I should just get off my lazy ass, but I have found peers from the general community to be much more informative in a way more efficient manner, so any help would be greatly appreciated.
Thanks!
For anyone interested, after enough searching I found a great example that notified me of all the fundamental processes to creating a basic transaction and allowed me the knowledge to further manipulate the sdk.
Check it -
Code Projects PayflowPro example and introduction.

Resources